{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "* 我们所使用的数据集\n",
    "\n",
    "在原视频中所使用的是莎士比亚的作品全集的txt文件，但是在此处我们选择使用一个中文的数据集，以[奇书网](https://www.qishuta.org/Shtml5132.html)上的txt文件为例，其文件本身并不大，我们只需下载下来即可直接使用如果遇到问题需要经过一次编码解码的过程。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 读取该文本的脚本为\n",
    "with open('../data/Xiyou.txt', 'r', encoding='utf-8') as f:\n",
    "    text = f.read()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "打开这个文档，统计下其字数和字符数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "西游记全文的长度为:722142\n"
     ]
    }
   ],
   "source": [
    "type(text)\n",
    "print(\"西游记全文的长度为:\"+str(len(text)))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "第一回　灵根育孕源流出　心性修持大道生\n",
      "\n",
      "诗曰：\n",
      "\n",
      "混沌未分天地乱，茫茫渺渺无人见。\n",
      "\n",
      "自从盘古破鸿蒙，开辟从兹清浊辨。\n",
      "\n",
      "覆载群生仰至仁，发明万物皆成善。\n",
      "\n",
      "欲知造化会元功，须看西游释厄传。\n",
      "\n",
      "盖闻天地之数，有十二万九千六百岁为一元。将一元分为十二会，乃子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥之十二支也。每会该一万八百岁。且就一日而论：子时得阳气，而丑则鸡鸣；寅不通光，而卯则日出；辰时食后，而巳则挨排；日午天中，而未则西蹉；申时晡而日落酉；戌黄昏而人定亥。譬于大数，若到戌会之终，则天地昏蒙而万物否矣。再去五千四百岁，交亥会之初，则当黑暗，而两间人物俱无矣，故曰混沌。又五千四百岁，亥会将终，贞下起元，近子之会，而复逐渐开明。邵康节曰：“冬至子之半，天心无改移。一阳初动处，万物未生时。”到此，天始有根。再五千四百岁，正当子会，轻清上腾，有日，有月，有星，有辰。日、月、星、辰，谓之四象。故曰，天开于子。又经五千四百岁，子会将终，近丑之会，而逐渐坚实。易曰：“大哉乾元！至哉坤元！万物资生，乃顺承天。”至此，地始凝结。再五千四百岁，正当丑会，重浊下凝，有水，有火，有山，有石，有土。水、火、山、石、土谓之五形。故曰，地辟于丑。又经五千四百岁，丑会终而寅会之初，发生万物。历曰：“天气下降，地气上升；天地交合，群物皆生。”至此，天清地爽，阴阳交合。再五千四百岁，正当寅会，生人，生兽，生禽，正谓天地人，三才定位。故曰，人生于寅。感盘古开辟，三皇治世，五帝定伦，世界之间，遂分为四大部洲：曰东胜神洲，曰西牛贺洲，曰南赡部洲，曰北俱芦洲。这部书单表东胜神洲。海外有一国土，名曰傲来国。国近大海，海中有一座山，唤为花果山。此山乃十洲之祖脉，三岛之来龙，自开清浊而立，鸿蒙判后而成。真个好山！有词赋为证。赋曰：\n",
      "\n",
      "势镇汪洋，威宁瑶海。势镇汪洋，潮涌银山鱼入穴；威宁瑶海，波翻雪浪蜃离渊。木火方隅高积上，东海之处耸崇巅。丹崖怪石，削壁奇峰。丹崖上，彩凤双鸣；削壁前，麒麟独卧。峰头时听锦鸡鸣，石窟每观龙出入。林中有寿鹿仙狐，树上有灵禽玄鹤。瑶草奇花不谢，青松翠柏长春。仙桃常结果，修竹每留云。一条涧壑藤萝密，四面原堤草色新。正是百川会处擎天柱，万劫无移大地根。那座山，正当顶上，有一块仙石。其石有三丈六尺五寸高，有二丈四尺围圆。三丈六尺五寸高，按周天三百六十五度；二丈四尺围圆，按政历二十四气。上有\n"
     ]
    }
   ],
   "source": [
    "# 我们来打印前《西游记》前1000个字\n",
    "print(text[:1000])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "- 作为明清文言文来说，总体还是比较抽象的，接下我们来统计下其出现的字符和数量等具体情况\n",
    "    - 这里转换的思路还是比较巧妙的，主要是利用`set`函数将字符串转化为集合，在集合中，字符是不可以重复出现的"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "在西游记中共出现了这些字符 在西游记中共出现了这些字符\"在西游记中共出现了这些字符(在西游记中共出现了这些字符)在西游记中共出现了这些字符*在西游记中共出现了这些字符+在西游记中共出现了这些字符-在西游记中共出现了这些字符.在西游记中共出现了这些字符7在西游记中共出现了这些字符:在西游记中共出现了这些字符C在西游记中共出现了这些字符Q在西游记中共出现了这些字符W在西游记中共出现了这些字符[在西游记中共出现了这些字符]在西游记中共出现了这些字符^在西游记中共出现了这些字符_在西游记中共出现了这些字符a在西游记中共出现了这些字符c在西游记中共出现了这些字符g在西游记中共出现了这些字符h在西游记中共出现了这些字符i在西游记中共出现了这些字符j在西游记中共出现了这些字符m在西游记中共出现了这些字符n在西游记中共出现了这些字符o在西游记中共出现了这些字符s在西游记中共出现了这些字符u在西游记中共出现了这些字符w在西游记中共出现了这些字符{在西游记中共出现了这些字符|在西游记中共出现了这些字符ī在西游记中共出现了这些字符ω在西游记中共出现了这些字符—在西游记中共出现了这些字符‘在西游记中共出现了这些字符’在西游记中共出现了这些字符“在西游记中共出现了这些字符”在西游记中共出现了这些字符…在西游记中共出现了这些字符□在西游记中共出现了这些字符　在西游记中共出现了这些字符、在西游记中共出现了这些字符。在西游记中共出现了这些字符《在西游记中共出现了这些字符》在西游记中共出现了这些字符【在西游记中共出现了这些字符】在西游记中共出现了这些字符一在西游记中共出现了这些字符丁在西游记中共出现了这些字符七在西游记中共出现了这些字符万在西游记中共出现了这些字符丈在西游记中共出现了这些字符三在西游记中共出现了这些字符上在西游记中共出现了这些字符下在西游记中共出现了这些字符不在西游记中共出现了这些字符与在西游记中共出现了这些字符丑在西游记中共出现了这些字符专在西游记中共出现了这些字符且在西游记中共出现了这些字符丕在西游记中共出现了这些字符世在西游记中共出现了这些字符丘在西游记中共出现了这些字符丙在西游记中共出现了这些字符业在西游记中共出现了这些字符丛在西游记中共出现了这些字符东在西游记中共出现了这些字符丝在西游记中共出现了这些字符丞在西游记中共出现了这些字符丢在西游记中共出现了这些字符两在西游记中共出现了这些字符严在西游记中共出现了这些字符丧在西游记中共出现了这些字符个在西游记中共出现了这些字符丫在西游记中共出现了这些字符中在西游记中共出现了这些字符丰在西游记中共出现了这些字符串在西游记中共出现了这些字符临在西游记中共出现了这些字符丸在西游记中共出现了这些字符丹在西游记中共出现了这些字符为在西游记中共出现了这些字符主在西游记中共出现了这些字符丽在西游记中共出现了这些字符举在西游记中共出现了这些字符乃在西游记中共出现了这些字符久在西游记中共出现了这些字符么在西游记中共出现了这些字符义在西游记中共出现了这些字符之在西游记中共出现了这些字符乌在西游记中共出现了这些字符乍在西游记中共出现了这些字符乎在西游记中共出现了这些字符乏在西游记中共出现了这些字符乐在西游记中共出现了这些字符乒在西游记中共出现了这些字符乓在西游记中共出现了这些字符乔在西游记中共出现了这些字符乖在西游记中共出现了这些字符乘在西游记中共出现了这些字符乙在西游记中共出现了这些字符乜在西游记中共出现了这些字符九在西游记中共出现了这些字符乞在西游记中共出现了这些字符也在西游记中共出现了这些字符习在西游记中共出现了这些字符乡在西游记中共出现了这些字符书在西游记中共出现了这些字符买在西游记中共出现了这些字符乱在西游记中共出现了这些字符乳在西游记中共出现了这些字符乾在西游记中共出现了这些字符了在西游记中共出现了这些字符予在西游记中共出现了这些字符争在西游记中共出现了这些字符事在西游记中共出现了这些字符二在西游记中共出现了这些字符于在西游记中共出现了这些字符亏在西游记中共出现了这些字符云在西游记中共出现了这些字符互在西游记中共出现了这些字符五在西游记中共出现了这些字符井在西游记中共出现了这些字符亘在西游记中共出现了这些字符亚在西游记中共出现了这些字符些在西游记中共出现了这些字符亡在西游记中共出现了这些字符亢在西游记中共出现了这些字符交在西游记中共出现了这些字符亥在西游记中共出现了这些字符亦在西游记中共出现了这些字符产在西游记中共出现了这些字符亨在西游记中共出现了这些字符亩在西游记中共出现了这些字符享在西游记中共出现了这些字符京在西游记中共出现了这些字符亭在西游记中共出现了这些字符亮在西游记中共出现了这些字符亲在西游记中共出现了这些字符亵在西游记中共出现了这些字符人在西游记中共出现了这些字符亿在西游记中共出现了这些字符什在西游记中共出现了这些字符仁在西游记中共出现了这些字符仃在西游记中共出现了这些字符仅在西游记中共出现了这些字符仆在西游记中共出现了这些字符仇在西游记中共出现了这些字符今在西游记中共出现了这些字符介在西游记中共出现了这些字符仍在西游记中共出现了这些字符从在西游记中共出现了这些字符仑在西游记中共出现了这些字符仓在西游记中共出现了这些字符仔在西游记中共出现了这些字符他在西游记中共出现了这些字符仗在西游记中共出现了这些字符付在西游记中共出现了这些字符仙在西游记中共出现了这些字符仞在西游记中共出现了这些字符代在西游记中共出现了这些字符令在西游记中共出现了这些字符以在西游记中共出现了这些字符仪在西游记中共出现了这些字符们在西游记中共出现了这些字符仰在西游记中共出现了这些字符仲在西游记中共出现了这些字符仵在西游记中共出现了这些字符件在西游记中共出现了这些字符价在西游记中共出现了这些字符任在西游记中共出现了这些字符仿在西游记中共出现了这些字符伉在西游记中共出现了这些字符伊在西游记中共出现了这些字符伍在西游记中共出现了这些字符伏在西游记中共出现了这些字符伐在西游记中共出现了这些字符休在西游记中共出现了这些字符众在西游记中共出现了这些字符优在西游记中共出现了这些字符伙在西游记中共出现了这些字符会在西游记中共出现了这些字符伞在西游记中共出现了这些字符伟在西游记中共出现了这些字符传在西游记中共出现了这些字符伤在西游记中共出现了这些字符伦在西游记中共出现了这些字符伪在西游记中共出现了这些字符伫在西游记中共出现了这些字符伯在西游记中共出现了这些字符估在西游记中共出现了这些字符伴在西游记中共出现了这些字符伶在西游记中共出现了这些字符伸在西游记中共出现了这些字符伺在西游记中共出现了这些字符似在西游记中共出现了这些字符伽在西游记中共出现了这些字符佃在西游记中共出现了这些字符但在西游记中共出现了这些字符佇在西游记中共出现了这些字符位在西游记中共出现了这些字符低在西游记中共出现了这些字符住在西游记中共出现了这些字符佐在西游记中共出现了这些字符佑在西游记中共出现了这些字符体在西游记中共出现了这些字符何在西游记中共出现了这些字符余在西游记中共出现了这些字符佛在西游记中共出现了这些字符作在西游记中共出现了这些字符佞在西游记中共出现了这些字符你在西游记中共出现了这些字符佣在西游记中共出现了这些字符佥在西游记中共出现了这些字符佩在西游记中共出现了这些字符佯在西游记中共出现了这些字符佳在西游记中共出现了这些字符使在西游记中共出现了这些字符侄在西游记中共出现了这些字符侈在西游记中共出现了这些字符例在西游记中共出现了这些字符侍在西游记中共出现了这些字符供在西游记中共出现了这些字符依在西游记中共出现了这些字符侠在西游记中共出现了这些字符侣在西游记中共出现了这些字符侥在西游记中共出现了这些字符侧在西游记中共出现了这些字符侪在西游记中共出现了这些字符侮在西游记中共出现了这些字符侯在西游记中共出现了这些字符侵在西游记中共出现了这些字符便在西游记中共出现了这些字符促在西游记中共出现了这些字符俄在西游记中共出现了这些字符俊在西游记中共出现了这些字符俎在西游记中共出现了这些字符俏在西游记中共出现了这些字符俐在西游记中共出现了这些字符俗在西游记中共出现了这些字符俚在西游记中共出现了这些字符保在西游记中共出现了这些字符俟在西游记中共出现了这些字符信在西游记中共出现了这些字符俦在西游记中共出现了这些字符俨在西游记中共出现了这些字符俪在西游记中共出现了这些字符俫在西游记中共出现了这些字符俭在西游记中共出现了这些字符修在西游记中共出现了这些字符俯在西游记中共出现了这些字符俱在西游记中共出现了这些字符俸在西游记中共出现了这些字符俺在西游记中共出现了这些字符倈在西游记中共出现了这些字符倍在西游记中共出现了这些字符倏在西游记中共出现了这些字符倐在西游记中共出现了这些字符倒在西游记中共出现了这些字符倘在西游记中共出现了这些字符候在西游记中共出现了这些字符倚在西游记中共出现了这些字符倜在西游记中共出现了这些字符借在西游记中共出现了这些字符倥在西游记中共出现了这些字符倦在西游记中共出现了这些字符倨在西游记中共出现了这些字符倩在西游记中共出现了这些字符债在西游记中共出现了这些字符值在西游记中共出现了这些字符倾在西游记中共出现了这些字符偃在西游记中共出现了这些字符假在西游记中共出现了这些字符偈在西游记中共出现了这些字符偌在西游记中共出现了这些字符偎在西游记中共出现了这些字符偏在西游记中共出现了这些字符做在西游记中共出现了这些字符停在西游记中共出现了这些字符健在西游记中共出现了这些字符偶在西游记中共出现了这些字符偷在西游记中共出现了这些字符偿在西游记中共出现了这些字符傀在西游记中共出现了这些字符傅在西游记中共出现了这些字符傍在西游记中共出现了这些字符傞在西游记中共出现了这些字符傥在西游记中共出现了这些字符储在西游记中共出现了这些字符傩在西游记中共出现了这些字符催在西游记中共出现了这些字符傲在西游记中共出现了这些字符傻在西游记中共出现了这些字符像在西游记中共出现了这些字符僚在西游记中共出现了这些字符僝在西游记中共出现了这些字符僧在西游记中共出现了这些字符僭在西游记中共出现了这些字符僮在西游记中共出现了这些字符僵在西游记中共出现了这些字符僻在西游记中共出现了这些字符僽在西游记中共出现了这些字符儒在西游记中共出现了这些字符儡在西游记中共出现了这些字符儾在西游记中共出现了这些字符儿在西游记中共出现了这些字符兀在西游记中共出现了这些字符允在西游记中共出现了这些字符元在西游记中共出现了这些字符兄在西游记中共出现了这些字符充在西游记中共出现了这些字符兆在西游记中共出现了这些字符先在西游记中共出现了这些字符光在西游记中共出现了这些字符克在西游记中共出现了这些字符免在西游记中共出现了这些字符兑在西游记中共出现了这些字符兔在西游记中共出现了这些字符兕在西游记中共出现了这些字符党在西游记中共出现了这些字符兜在西游记中共出现了这些字符兢在西游记中共出现了这些字符入在西游记中共出现了这些字符全在西游记中共出现了这些字符八在西游记中共出现了这些字符公在西游记中共出现了这些字符六在西游记中共出现了这些字符兮在西游记中共出现了这些字符兰在西游记中共出现了这些字符共在西游记中共出现了这些字符关在西游记中共出现了这些字符兴在西游记中共出现了这些字符兵在西游记中共出现了这些字符其在西游记中共出现了这些字符具在西游记中共出现了这些字符典在西游记中共出现了这些字符兹在西游记中共出现了这些字符养在西游记中共出现了这些字符兼在西游记中共出现了这些字符兽在西游记中共出现了这些字符冀在西游记中共出现了这些字符内在西游记中共出现了这些字符冈在西游记中共出现了这些字符冉在西游记中共出现了这些字符再在西游记中共出现了这些字符冒在西游记中共出现了这些字符冕在西游记中共出现了这些字符冗在西游记中共出现了这些字符写在西游记中共出现了这些字符军在西游记中共出现了这些字符农在西游记中共出现了这些字符冠在西游记中共出现了这些字符冢在西游记中共出现了这些字符冤在西游记中共出现了这些字符冥在西游记中共出现了这些字符冬在西游记中共出现了这些字符冯在西游记中共出现了这些字符冰在西游记中共出现了这些字符冲在西游记中共出现了这些字符决在西游记中共出现了这些字符况在西游记中共出现了这些字符冷在西游记中共出现了这些字符冻在西游记中共出现了这些字符冽在西游记中共出现了这些字符净在西游记中共出现了这些字符凄在西游记中共出现了这些字符准在西游记中共出现了这些字符凉在西游记中共出现了这些字符凋在西游记中共出现了这些字符凌在西游记中共出现了这些字符减在西游记中共出现了这些字符凑在西游记中共出现了这些字符凛在西游记中共出现了这些字符凝在西游记中共出现了这些字符几在西游记中共出现了这些字符凡在西游记中共出现了这些字符凤在西游记中共出现了这些字符凫在西游记中共出现了这些字符凭在西游记中共出现了这些字符凯在西游记中共出现了这些字符凰在西游记中共出现了这些字符凳在西游记中共出现了这些字符凶在西游记中共出现了这些字符凸在西游记中共出现了这些字符凹在西游记中共出现了这些字符出在西游记中共出现了这些字符击在西游记中共出现了这些字符函在西游记中共出现了这些字符凿在西游记中共出现了这些字符刀在西游记中共出现了这些字符刁在西游记中共出现了这些字符刃在西游记中共出现了这些字符分在西游记中共出现了这些字符切在西游记中共出现了这些字符刎在西游记中共出现了这些字符刑在西游记中共出现了这些字符划在西游记中共出现了这些字符列在西游记中共出现了这些字符刘在西游记中共出现了这些字符则在西游记中共出现了这些字符刚在西游记中共出现了这些字符创在西游记中共出现了这些字符初在西游记中共出现了这些字符删在西游记中共出现了这些字符判在西游记中共出现了这些字符刨在西游记中共出现了这些字符利在西游记中共出现了这些字符别在西游记中共出现了这些字符刬在西游记中共出现了这些字符刮在西游记中共出现了这些字符到在西游记中共出现了这些字符刳在西游记中共出现了这些字符制在西游记中共出现了这些字符刷在西游记中共出现了这些字符券在西游记中共出现了这些字符刹在西游记中共出现了这些字符刺在西游记中共出现了这些字符刻在西游记中共出现了这些字符刽在西游记中共出现了这些字符剁在西游记中共出现了这些字符剂在西游记中共出现了这些字符剃在西游记中共出现了这些字符削在西游记中共出现了这些字符剌在西游记中共出现了这些字符前在西游记中共出现了这些字符剐在西游记中共出现了这些字符剑在西游记中共出现了这些字符剔在西游记中共出现了这些字符剖在西游记中共出现了这些字符剜在西游记中共出现了这些字符剥在西游记中共出现了这些字符剩在西游记中共出现了这些字符剪在西游记中共出现了这些字符副在西游记中共出现了这些字符割在西游记中共出现了这些字符剽在西游记中共出现了这些字符剿在西游记中共出现了这些字符劈在西游记中共出现了这些字符劖在西游记中共出现了这些字符劚在西游记中共出现了这些字符力在西游记中共出现了这些字符劝在西游记中共出现了这些字符办在西游记中共出现了这些字符功在西游记中共出现了这些字符加在西游记中共出现了这些字符务在西游记中共出现了这些字符劣在西游记中共出现了这些字符动在西游记中共出现了这些字符助在西游记中共出现了这些字符努在西游记中共出现了这些字符劫在西游记中共出现了这些字符劬在西游记中共出现了这些字符劲在西游记中共出现了这些字符劳在西游记中共出现了这些字符势在西游记中共出现了这些字符勅在西游记中共出现了这些字符勇在西游记中共出现了这些字符勉在西游记中共出现了这些字符勋在西游记中共出现了这些字符勒在西游记中共出现了这些字符勘在西游记中共出现了这些字符募在西游记中共出现了这些字符勣在西游记中共出现了这些字符勤在西游记中共出现了这些字符勺在西游记中共出现了这些字符勾在西游记中共出现了这些字符勿在西游记中共出现了这些字符匀在西游记中共出现了这些字符包在西游记中共出现了这些字符匆在西游记中共出现了这些字符化在西游记中共出现了这些字符北在西游记中共出现了这些字符匙在西游记中共出现了这些字符匝在西游记中共出现了这些字符匠在西游记中共出现了这些字符匡在西游记中共出现了这些字符匣在西游记中共出现了这些字符匹在西游记中共出现了这些字符区在西游记中共出现了这些字符医在西游记中共出现了这些字符匾在西游记中共出现了这些字符匿在西游记中共出现了这些字符十在西游记中共出现了这些字符千在西游记中共出现了这些字符升在西游记中共出现了这些字符午在西游记中共出现了这些字符卉在西游记中共出现了这些字符半在西游记中共出现了这些字符华在西游记中共出现了这些字符协在西游记中共出现了这些字符卑在西游记中共出现了这些字符卒在西游记中共出现了这些字符卓在西游记中共出现了这些字符单在西游记中共出现了这些字符卖在西游记中共出现了这些字符南在西游记中共出现了这些字符博在西游记中共出现了这些字符卜在西游记中共出现了这些字符卞在西游记中共出现了这些字符占在西游记中共出现了这些字符卢在西游记中共出现了这些字符卤在西游记中共出现了这些字符卦在西游记中共出现了这些字符卧在西游记中共出现了这些字符卫在西游记中共出现了这些字符卮在西游记中共出现了这些字符卯在西游记中共出现了这些字符印在西游记中共出现了这些字符危在西游记中共出现了这些字符即在西游记中共出现了这些字符却在西游记中共出现了这些字符卵在西游记中共出现了这些字符卷在西游记中共出现了这些字符卸在西游记中共出现了这些字符卺在西游记中共出现了这些字符卿在西游记中共出现了这些字符厂在西游记中共出现了这些字符厄在西游记中共出现了这些字符厅在西游记中共出现了这些字符历在西游记中共出现了这些字符厉在西游记中共出现了这些字符压在西游记中共出现了这些字符厌在西游记中共出现了这些字符厕在西游记中共出现了这些字符厘在西游记中共出现了这些字符厚在西游记中共出现了这些字符原在西游记中共出现了这些字符厢在西游记中共出现了这些字符厦在西游记中共出现了这些字符厨在西游记中共出现了这些字符厮在西游记中共出现了这些字符去在西游记中共出现了这些字符县在西游记中共出现了这些字符参在西游记中共出现了这些字符叆在西游记中共出现了这些字符叇在西游记中共出现了这些字符又在西游记中共出现了这些字符叉在西游记中共出现了这些字符及在西游记中共出现了这些字符友在西游记中共出现了这些字符双在西游记中共出现了这些字符反在西游记中共出现了这些字符发在西游记中共出现了这些字符叔在西游记中共出现了这些字符取在西游记中共出现了这些字符受在西游记中共出现了这些字符变在西游记中共出现了这些字符叙在西游记中共出现了这些字符叛在西游记中共出现了这些字符叟在西游记中共出现了这些字符叠在西游记中共出现了这些字符口在西游记中共出现了这些字符古在西游记中共出现了这些字符句在西游记中共出现了这些字符另在西游记中共出现了这些字符叨在西游记中共出现了这些字符叩在西游记中共出现了这些字符只在西游记中共出现了这些字符叫在西游记中共出现了这些字符召在西游记中共出现了这些字符叭在西游记中共出现了这些字符叮在西游记中共出现了这些字符可在西游记中共出现了这些字符台在西游记中共出现了这些字符叱在西游记中共出现了这些字符史在西游记中共出现了这些字符右在西游记中共出现了这些字符叵在西游记中共出现了这些字符叶在西游记中共出现了这些字符号在西游记中共出现了这些字符司在西游记中共出现了这些字符叹在西游记中共出现了这些字符吁在西游记中共出现了这些字符吃在西游记中共出现了这些字符各在西游记中共出现了这些字符吅在西游记中共出现了这些字符吆在西游记中共出现了这些字符合在西游记中共出现了这些字符吉在西游记中共出现了这些字符吊在西游记中共出现了这些字符同在西游记中共出现了这些字符名在西游记中共出现了这些字符后在西游记中共出现了这些字符吏在西游记中共出现了这些字符吐在西游记中共出现了这些字符向在西游记中共出现了这些字符吒在西游记中共出现了这些字符吓在西游记中共出现了这些字符吕在西游记中共出现了这些字符君在西游记中共出现了这些字符吝在西游记中共出现了这些字符吞在西游记中共出现了这些字符吟在西游记中共出现了这些字符吠在西游记中共出现了这些字符否在西游记中共出现了这些字符吧在西游记中共出现了这些字符吩在西游记中共出现了这些字符含在西游记中共出现了这些字符听在西游记中共出现了这些字符吮在西游记中共出现了这些字符启在西游记中共出现了这些字符吴在西游记中共出现了这些字符吵在西游记中共出现了这些字符吸在西游记中共出现了这些字符吹在西游记中共出现了这些字符吼在西游记中共出现了这些字符吽在西游记中共出现了这些字符吾在西游记中共出现了这些字符呀在西游记中共出现了这些字符呆在西游记中共出现了这些字符呈在西游记中共出现了这些字符告在西游记中共出现了这些字符呐在西游记中共出现了这些字符呕在西游记中共出现了这些字符呖在西游记中共出现了这些字符员在西游记中共出现了这些字符呜在西游记中共出现了这些字符呢在西游记中共出现了这些字符呦在西游记中共出现了这些字符周在西游记中共出现了这些字符呱在西游记中共出现了这些字符味在西游记中共出现了这些字符呵在西游记中共出现了这些字符呻在西游记中共出现了这些字符呼在西游记中共出现了这些字符命在西游记中共出现了这些字符咀在西游记中共出现了这些字符咂在西游记中共出现了这些字符咄在西游记中共出现了这些字符咆在西游记中共出现了这些字符咇在西游记中共出现了这些字符咋在西游记中共出现了这些字符和在西游记中共出现了这些字符咎在西游记中共出现了这些字符咏在西游记中共出现了这些字符咐在西游记中共出现了这些字符咒在西游记中共出现了这些字符咙在西游记中共出现了这些字符咚在西游记中共出现了这些字符咛在西游记中共出现了这些字符咤在西游记中共出现了这些字符咦在西游记中共出现了这些字符咧在西游记中共出现了这些字符咨在西游记中共出现了这些字符咪在西游记中共出现了这些字符咬在西游记中共出现了这些字符咱在西游记中共出现了这些字符咳在西游记中共出现了这些字符咶在西游记中共出现了这些字符咸在西游记中共出现了这些字符咽在西游记中共出现了这些字符咿在西游记中共出现了这些字符哀在西游记中共出现了这些字符品在西游记中共出现了这些字符哂在西游记中共出现了这些字符哃在西游记中共出现了这些字符哄在西游记中共出现了这些字符哇在西游记中共出现了这些字符哈在西游记中共出现了这些字符哉在西游记中共出现了这些字符响在西游记中共出现了这些字符哏在西游记中共出现了这些字符哑在西游记中共出现了这些字符哕在西游记中共出现了这些字符哗在西游记中共出现了这些字符哜在西游记中共出现了这些字符哝在西游记中共出现了这些字符哥在西游记中共出现了这些字符哦在西游记中共出现了这些字符哨在西游记中共出现了这些字符哩在西游记中共出现了这些字符哪在西游记中共出现了这些字符哭在西游记中共出现了这些字符哮在西游记中共出现了这些字符哲在西游记中共出现了这些字符哺在西游记中共出现了这些字符哼在西游记中共出现了这些字符哽在西游记中共出现了这些字符唆在西游记中共出现了这些字符唇在西游记中共出现了这些字符唉在西游记中共出现了这些字符唎在西游记中共出现了这些字符唏在西游记中共出现了这些字符唐在西游记中共出现了这些字符唝在西游记中共出现了这些字符唠在西游记中共出现了这些字符唣在西游记中共出现了这些字符唤在西游记中共出现了这些字符唧在西游记中共出现了这些字符唬在西游记中共出现了这些字符唯在西游记中共出现了这些字符唱在西游记中共出现了这些字符唳在西游记中共出现了这些字符唵在西游记中共出现了这些字符唾在西游记中共出现了这些字符唿在西游记中共出现了这些字符啃在西游记中共出现了这些字符啄在西游记中共出现了这些字符啅在西游记中共出现了这些字符商在西游记中共出现了这些字符啈在西游记中共出现了这些字符啊在西游记中共出现了这些字符啐在西游记中共出现了这些字符啕在西游记中共出现了这些字符啖在西游记中共出现了这些字符啭在西游记中共出现了这些字符啮在西游记中共出现了这些字符啯在西游记中共出现了这些字符啸在西游记中共出现了这些字符啻在西游记中共出现了这些字符啼在西游记中共出现了这些字符啾在西游记中共出现了这些字符喁在西游记中共出现了这些字符喂在西游记中共出现了这些字符喃在西游记中共出现了这些字符善在西游记中共出现了这些字符喇在西游记中共出现了这些字符喉在西游记中共出现了这些字符喊在西游记中共出现了这些字符喋在西游记中共出现了这些字符喏在西游记中共出现了这些字符喑在西游记中共出现了这些字符喔在西游记中共出现了这些字符喘在西游记中共出现了这些字符喙在西游记中共出现了这些字符喜在西游记中共出现了这些字符喝在西游记中共出现了这些字符喧在西游记中共出现了这些字符喨在西游记中共出现了这些字符喳在西游记中共出现了这些字符喷在西游记中共出现了这些字符嗅在西游记中共出现了这些字符嗉在西游记中共出现了这些字符嗒在西游记中共出现了这些字符嗓在西游记中共出现了这些字符嗔在西游记中共出现了这些字符嗗在西游记中共出现了这些字符嗛在西游记中共出现了这些字符嗟在西游记中共出现了这些字符嗣在西游记中共出现了这些字符嗤在西游记中共出现了这些字符嗳在西游记中共出现了这些字符嗽在西游记中共出现了这些字符嘈在西游记中共出现了这些字符嘉在西游记中共出现了这些字符嘎在西游记中共出现了这些字符嘑在西游记中共出现了这些字符嘘在西游记中共出现了这些字符嘛在西游记中共出现了这些字符嘤在西游记中共出现了这些字符嘬在西游记中共出现了这些字符嘱在西游记中共出现了这些字符嘲在西游记中共出现了这些字符嘴在西游记中共出现了这些字符嘶在西游记中共出现了这些字符嘹在西游记中共出现了这些字符嘻在西游记中共出现了这些字符噀在西游记中共出现了这些字符噇在西游记中共出现了这些字符噘在西游记中共出现了这些字符噙在西游记中共出现了这些字符噤在西游记中共出现了这些字符器在西游记中共出现了这些字符噪在西游记中共出现了这些字符噫在西游记中共出现了这些字符噬在西游记中共出现了这些字符噹在西游记中共出现了这些字符嚎在西游记中共出现了这些字符嚏在西游记中共出现了这些字符嚓在西游记中共出现了这些字符嚣在西游记中共出现了这些字符嚷在西游记中共出现了这些字符嚼在西游记中共出现了这些字符囊在西游记中共出现了这些字符囒在西游记中共出现了这些字符囔在西游记中共出现了这些字符囚在西游记中共出现了这些字符四在西游记中共出现了这些字符回在西游记中共出现了这些字符囟在西游记中共出现了这些字符因在西游记中共出现了这些字符团在西游记中共出现了这些字符囫在西游记中共出现了这些字符园在西游记中共出现了这些字符困在西游记中共出现了这些字符囱在西游记中共出现了这些字符围在西游记中共出现了这些字符囵在西游记中共出现了这些字符固在西游记中共出现了这些字符国在西游记中共出现了这些字符图在西游记中共出现了这些字符圃在西游记中共出现了这些字符圆在西游记中共出现了这些字符圈在西游记中共出现了这些字符圊在西游记中共出现了这些字符圜在西游记中共出现了这些字符圞在西游记中共出现了这些字符土在西游记中共出现了这些字符圣在西游记中共出现了这些字符在在西游记中共出现了这些字符圩在西游记中共出现了这些字符圭在西游记中共出现了这些字符圯在西游记中共出现了这些字符地在西游记中共出现了这些字符场在西游记中共出现了这些字符址在西游记中共出现了这些字符坂在西游记中共出现了这些字符均在西游记中共出现了这些字符坊在西游记中共出现了这些字符坎在西游记中共出现了这些字符坏在西游记中共出现了这些字符坐在西游记中共出现了这些字符坑在西游记中共出现了这些字符块在西游记中共出现了这些字符坚在西游记中共出现了这些字符坛在西游记中共出现了这些字符坞在西游记中共出现了这些字符坟在西游记中共出现了这些字符坠在西游记中共出现了这些字符坡在西游记中共出现了这些字符坤在西游记中共出现了这些字符坦在西游记中共出现了这些字符坫在西游记中共出现了这些字符坯在西游记中共出现了这些字符垂在西游记中共出现了这些字符垒在西游记中共出现了这些字符垓在西游记中共出现了这些字符垛在西游记中共出现了这些字符垢在西游记中共出现了这些字符垣在西游记中共出现了这些字符垫在西游记中共出现了这些字符埂在西游记中共出现了这些字符埃在西游记中共出现了这些字符埋在西游记中共出现了这些字符城在西游记中共出现了这些字符域在西游记中共出现了这些字符埠在西游记中共出现了这些字符培在西游记中共出现了这些字符基在西游记中共出现了这些字符堂在西游记中共出现了这些字符堆在西游记中共出现了这些字符堑在西游记中共出现了这些字符堕在西游记中共出现了这些字符堡在西游记中共出现了这些字符堤在西游记中共出现了这些字符堪在西游记中共出现了这些字符堰在西游记中共出现了这些字符堵在西游记中共出现了这些字符塌在西游记中共出现了这些字符塑在西游记中共出现了这些字符塔在西游记中共出现了这些字符塘在西游记中共出现了这些字符塞在西游记中共出现了这些字符填在西游记中共出现了这些字符塵在西游记中共出现了这些字符墀在西游记中共出现了这些字符境在西游记中共出现了这些字符墓在西游记中共出现了这些字符墙在西游记中共出现了这些字符增在西游记中共出现了这些字符墟在西游记中共出现了这些字符墨在西游记中共出现了这些字符墩在西游记中共出现了这些字符壁在西游记中共出现了这些字符壅在西游记中共出现了这些字符壑在西游记中共出现了这些字符壤在西游记中共出现了这些字符士在西游记中共出现了这些字符壬在西游记中共出现了这些字符壮在西游记中共出现了这些字符声在西游记中共出现了这些字符壳在西游记中共出现了这些字符壶在西游记中共出现了这些字符处在西游记中共出现了这些字符备在西游记中共出现了这些字符复在西游记中共出现了这些字符夏在西游记中共出现了这些字符夕在西游记中共出现了这些字符外在西游记中共出现了这些字符夙在西游记中共出现了这些字符多在西游记中共出现了这些字符夜在西游记中共出现了这些字符够在西游记中共出现了这些字符夤在西游记中共出现了这些字符大在西游记中共出现了这些字符天在西游记中共出现了这些字符太在西游记中共出现了这些字符夫在西游记中共出现了这些字符夬在西游记中共出现了这些字符夭在西游记中共出现了这些字符央在西游记中共出现了这些字符夯在西游记中共出现了这些字符失在西游记中共出现了这些字符头在西游记中共出现了这些字符夷在西游记中共出现了这些字符夸在西游记中共出现了这些字符夹在西游记中共出现了这些字符夺在西游记中共出现了这些字符奁在西游记中共出现了这些字符奇在西游记中共出现了这些字符奈在西游记中共出现了这些字符奉在西游记中共出现了这些字符奋在西游记中共出现了这些字符奎在西游记中共出现了这些字符奏在西游记中共出现了这些字符契在西游记中共出现了这些字符奔在西游记中共出现了这些字符奕在西游记中共出现了这些字符奖在西游记中共出现了这些字符套在西游记中共出现了这些字符奘在西游记中共出现了这些字符奠在西游记中共出现了这些字符奢在西游记中共出现了这些字符奥在西游记中共出现了这些字符女在西游记中共出现了这些字符奴在西游记中共出现了这些字符奶在西游记中共出现了这些字符奸在西游记中共出现了这些字符好在西游记中共出现了这些字符妁在西游记中共出现了这些字符如在西游记中共出现了这些字符妃在西游记中共出现了这些字符妄在西游记中共出现了这些字符妆在西游记中共出现了这些字符妇在西游记中共出现了这些字符妈在西游记中共出现了这些字符妍在西游记中共出现了这些字符妒在西游记中共出现了这些字符妓在西游记中共出现了这些字符妖在西游记中共出现了这些字符妙在西游记中共出现了这些字符妨在西游记中共出现了这些字符妩在西游记中共出现了这些字符妪在西游记中共出现了这些字符妲在西游记中共出现了这些字符妹在西游记中共出现了这些字符妻在西游记中共出现了这些字符妾在西游记中共出现了这些字符姆在西游记中共出现了这些字符姊在西游记中共出现了这些字符始在西游记中共出现了这些字符姌在西游记中共出现了这些字符姐在西游记中共出现了这些字符姑在西游记中共出现了这些字符姓在西游记中共出现了这些字符委在西游记中共出现了这些字符姚在西游记中共出现了这些字符姜在西游记中共出现了这些字符姢在西游记中共出现了这些字符姨在西游记中共出现了这些字符姬在西游记中共出现了这些字符姮在西游记中共出现了这些字符姹在西游记中共出现了这些字符姻在西游记中共出现了这些字符姿在西游记中共出现了这些字符威在西游记中共出现了这些字符娃在西游记中共出现了这些字符娄在西游记中共出现了这些字符娆在西游记中共出现了这些字符娇在西游记中共出现了这些字符娉在西游记中共出现了这些字符娑在西游记中共出现了这些字符娘在西游记中共出现了这些字符娜在西游记中共出现了这些字符娟在西游记中共出现了这些字符娥在西游记中共出现了这些字符娩在西游记中共出现了这些字符娱在西游记中共出现了这些字符娲在西游记中共出现了这些字符娶在西游记中共出现了这些字符娼在西游记中共出现了这些字符婆在西游记中共出现了这些字符婚在西游记中共出现了这些字符婢在西游记中共出现了这些字符婪在西游记中共出现了这些字符婴在西游记中共出现了这些字符婵在西游记中共出现了这些字符婷在西游记中共出现了这些字符婿在西游记中共出现了这些字符媒在西游记中共出现了这些字符媚在西游记中共出现了这些字符媳在西游记中共出现了这些字符媸在西游记中共出现了这些字符媾在西游记中共出现了这些字符嫁在西游记中共出现了这些字符嫂在西游记中共出现了这些字符嫉在西游记中共出现了这些字符嫌在西游记中共出现了这些字符嫔在西游记中共出现了这些字符嫖在西游记中共出现了这些字符嫡在西游记中共出现了这些字符嫣在西游记中共出现了这些字符嫦在西游记中共出现了这些字符嫩在西游记中共出现了这些字符嫱在西游记中共出现了这些字符嬉在西游记中共出现了这些字符嬝在西游记中共出现了这些字符孀在西游记中共出现了这些字符子在西游记中共出现了这些字符孔在西游记中共出现了这些字符孕在西游记中共出现了这些字符字在西游记中共出现了这些字符存在西游记中共出现了这些字符孙在西游记中共出现了这些字符孛在西游记中共出现了这些字符孜在西游记中共出现了这些字符孝在西游记中共出现了这些字符孟在西游记中共出现了这些字符季在西游记中共出现了这些字符孤在西游记中共出现了这些字符学在西游记中共出现了这些字符孩在西游记中共出现了这些字符孰在西游记中共出现了这些字符孺在西游记中共出现了这些字符孽在西游记中共出现了这些字符宁在西游记中共出现了这些字符宅在西游记中共出现了这些字符宇在西游记中共出现了这些字符守在西游记中共出现了这些字符安在西游记中共出现了这些字符宋在西游记中共出现了这些字符完在西游记中共出现了这些字符宏在西游记中共出现了这些字符宗在西游记中共出现了这些字符官在西游记中共出现了这些字符宙在西游记中共出现了这些字符定在西游记中共出现了这些字符宛在西游记中共出现了这些字符宜在西游记中共出现了这些字符宝在西游记中共出现了这些字符实在西游记中共出现了这些字符宠在西游记中共出现了这些字符审在西游记中共出现了这些字符客在西游记中共出现了这些字符宣在西游记中共出现了这些字符室在西游记中共出现了这些字符宥在西游记中共出现了这些字符宦在西游记中共出现了这些字符宪在西游记中共出现了这些字符宫在西游记中共出现了这些字符宰在西游记中共出现了这些字符害在西游记中共出现了这些字符宴在西游记中共出现了这些字符宵在西游记中共出现了这些字符家在西游记中共出现了这些字符宸在西游记中共出现了这些字符容在西游记中共出现了这些字符宽在西游记中共出现了这些字符宾在西游记中共出现了这些字符宿在西游记中共出现了这些字符寂在西游记中共出现了这些字符寄在西游记中共出现了这些字符寅在西游记中共出现了这些字符密在西游记中共出现了这些字符寇在西游记中共出现了这些字符富在西游记中共出现了这些字符寐在西游记中共出现了这些字符寒在西游记中共出现了这些字符寓在西游记中共出现了这些字符寝在西游记中共出现了这些字符寞在西游记中共出现了这些字符察在西游记中共出现了这些字符寡在西游记中共出现了这些字符寥在西游记中共出现了这些字符寨在西游记中共出现了这些字符寮在西游记中共出现了这些字符寰在西游记中共出现了这些字符寸在西游记中共出现了这些字符对在西游记中共出现了这些字符寺在西游记中共出现了这些字符寻在西游记中共出现了这些字符导在西游记中共出现了这些字符寿在西游记中共出现了这些字符封在西游记中共出现了这些字符射在西游记中共出现了这些字符将在西游记中共出现了这些字符尉在西游记中共出现了这些字符尊在西游记中共出现了这些字符小在西游记中共出现了这些字符少在西游记中共出现了这些字符尔在西游记中共出现了这些字符尖在西游记中共出现了这些字符尘在西游记中共出现了这些字符尚在西游记中共出现了这些字符尝在西游记中共出现了这些字符尤在西游记中共出现了这些字符尧在西游记中共出现了这些字符尪在西游记中共出现了这些字符尬在西游记中共出现了这些字符就在西游记中共出现了这些字符尴在西游记中共出现了这些字符尸在西游记中共出现了这些字符尺在西游记中共出现了这些字符尻在西游记中共出现了这些字符尼在西游记中共出现了这些字符尽在西游记中共出现了这些字符尾在西游记中共出现了这些字符尿在西游记中共出现了这些字符局在西游记中共出现了这些字符屁在西游记中共出现了这些字符层在西游记中共出现了这些字符居在西游记中共出现了这些字符屈在西游记中共出现了这些字符屉在西游记中共出现了这些字符届在西游记中共出现了这些字符屋在西游记中共出现了这些字符屎在西游记中共出现了这些字符屏在西游记中共出现了这些字符屑在西游记中共出现了这些字符展在西游记中共出现了这些字符属在西游记中共出现了这些字符屠在西游记中共出现了这些字符屡在西游记中共出现了这些字符屣在西游记中共出现了这些字符履在西游记中共出现了这些字符屯在西游记中共出现了这些字符山在西游记中共出现了这些字符屹在西游记中共出现了这些字符岁在西游记中共出现了这些字符岂在西游记中共出现了这些字符岑在西游记中共出现了这些字符岖在西游记中共出现了这些字符岗在西游记中共出现了这些字符岚在西游记中共出现了这些字符岛在西游记中共出现了这些字符岩在西游记中共出现了这些字符岫在西游记中共出现了这些字符岭在西游记中共出现了这些字符岱在西游记中共出现了这些字符岳在西游记中共出现了这些字符岸在西游记中共出现了这些字符峤在西游记中共出现了这些字符峥在西游记中共出现了这些字符峦在西游记中共出现了这些字符峨在西游记中共出现了这些字符峪在西游记中共出现了这些字符峭在西游记中共出现了这些字符峰在西游记中共出现了这些字符峻在西游记中共出现了这些字符崇在西游记中共出现了这些字符崎在西游记中共出现了这些字符崒在西游记中共出现了这些字符崔在西游记中共出现了这些字符崖在西游记中共出现了这些字符崚在西游记中共出现了这些字符崩在西游记中共出现了这些字符嵂在西游记中共出现了这些字符嵌在西游记中共出现了这些字符嵎在西游记中共出现了这些字符嵘在西游记中共出现了这些字符嵩在西游记中共出现了这些字符嵯在西游记中共出现了这些字符嶂在西游记中共出现了这些字符嶒在西游记中共出现了这些字符嶝在西游记中共出现了这些字符嶷在西游记中共出现了这些字符巅在西游记中共出现了这些字符巉在西游记中共出现了这些字符巍在西游记中共出现了这些字符川在西游记中共出现了这些字符州在西游记中共出现了这些字符巡在西游记中共出现了这些字符巢在西游记中共出现了这些字符工在西游记中共出现了这些字符左在西游记中共出现了这些字符巧在西游记中共出现了这些字符巨在西游记中共出现了这些字符巩在西游记中共出现了这些字符巫在西游记中共出现了这些字符差在西游记中共出现了这些字符己在西游记中共出现了这些字符已在西游记中共出现了这些字符巳在西游记中共出现了这些字符巴在西游记中共出现了这些字符巷在西游记中共出现了这些字符巽在西游记中共出现了这些字符巾在西游记中共出现了这些字符币在西游记中共出现了这些字符市在西游记中共出现了这些字符布在西游记中共出现了这些字符帅在西游记中共出现了这些字符师在西游记中共出现了这些字符希在西游记中共出现了这些字符帏在西游记中共出现了这些字符帐在西游记中共出现了这些字符帓在西游记中共出现了这些字符帔在西游记中共出现了这些字符帕在西游记中共出现了这些字符帖在西游记中共出现了这些字符帘在西游记中共出现了这些字符帚在西游记中共出现了这些字符帛在西游记中共出现了这些字符帜在西游记中共出现了这些字符帝在西游记中共出现了这些字符带在西游记中共出现了这些字符席在西游记中共出现了这些字符帮在西游记中共出现了这些字符帷在西游记中共出现了这些字符常在西游记中共出现了这些字符帽在西游记中共出现了这些字符幄在西游记中共出现了这些字符幅在西游记中共出现了这些字符幌在西游记中共出现了这些字符幔在西游记中共出现了这些字符幕在西游记中共出现了这些字符幛在西游记中共出现了这些字符幡在西游记中共出现了这些字符幢在西游记中共出现了这些字符干在西游记中共出现了这些字符平在西游记中共出现了这些字符年在西游记中共出现了这些字符并在西游记中共出现了这些字符幸在西游记中共出现了这些字符幻在西游记中共出现了这些字符幼在西游记中共出现了这些字符幽在西游记中共出现了这些字符广在西游记中共出现了这些字符庄在西游记中共出现了这些字符庆在西游记中共出现了这些字符庇在西游记中共出现了这些字符床在西游记中共出现了这些字符序在西游记中共出现了这些字符庐在西游记中共出现了这些字符庑在西游记中共出现了这些字符库在西游记中共出现了这些字符应在西游记中共出现了这些字符底在西游记中共出现了这些字符庖在西游记中共出现了这些字符店在西游记中共出现了这些字符庙在西游记中共出现了这些字符庚在西游记中共出现了这些字符府在西游记中共出现了这些字符庞在西游记中共出现了这些字符废在西游记中共出现了这些字符度在西游记中共出现了这些字符座在西游记中共出现了这些字符庭在西游记中共出现了这些字符庵在西游记中共出现了这些字符庶在西游记中共出现了这些字符康在西游记中共出现了这些字符庸在西游记中共出现了这些字符庾在西游记中共出现了这些字符廉在西游记中共出现了这些字符廊在西游记中共出现了这些字符廓在西游记中共出现了这些字符延在西游记中共出现了这些字符廷在西游记中共出现了这些字符建在西游记中共出现了这些字符开在西游记中共出现了这些字符弁在西游记中共出现了这些字符异在西游记中共出现了这些字符弃在西游记中共出现了这些字符弄在西游记中共出现了这些字符弈在西游记中共出现了这些字符弊在西游记中共出现了这些字符式在西游记中共出现了这些字符弓在西游记中共出现了这些字符引在西游记中共出现了这些字符弘在西游记中共出现了这些字符弟在西游记中共出现了这些字符张在西游记中共出现了这些字符弥在西游记中共出现了这些字符弦在西游记中共出现了这些字符弩在西游记中共出现了这些字符弭在西游记中共出现了这些字符弯在西游记中共出现了这些字符弱在西游记中共出现了这些字符弹在西游记中共出现了这些字符强在西游记中共出现了这些字符弼在西游记中共出现了这些字符彀在西游记中共出现了这些字符归在西游记中共出现了这些字符当在西游记中共出现了这些字符录在西游记中共出现了这些字符彘在西游记中共出现了这些字符形在西游记中共出现了这些字符彤在西游记中共出现了这些字符彩在西游记中共出现了这些字符彪在西游记中共出现了这些字符彭在西游记中共出现了这些字符彰在西游记中共出现了这些字符影在西游记中共出现了这些字符役在西游记中共出现了这些字符彻在西游记中共出现了这些字符彼在西游记中共出现了这些字符往在西游记中共出现了这些字符征在西游记中共出现了这些字符径在西游记中共出现了这些字符待在西游记中共出现了这些字符很在西游记中共出现了这些字符徉在西游记中共出现了这些字符徊在西游记中共出现了这些字符律在西游记中共出现了这些字符徐在西游记中共出现了这些字符徒在西游记中共出现了这些字符得在西游记中共出现了这些字符徘在西游记中共出现了这些字符徜在西游记中共出现了这些字符御在西游记中共出现了这些字符循在西游记中共出现了这些字符徭在西游记中共出现了这些字符微在西游记中共出现了这些字符徵在西游记中共出现了这些字符德在西游记中共出现了这些字符心在西游记中共出现了这些字符必在西游记中共出现了这些字符忆在西游记中共出现了这些字符忌在西游记中共出现了这些字符忍在西游记中共出现了这些字符忏在西游记中共出现了这些字符忐在西游记中共出现了这些字符忑在西游记中共出现了这些字符忒在西游记中共出现了这些字符忖在西游记中共出现了这些字符志在西游记中共出现了这些字符忘在西游记中共出现了这些字符忙在西游记中共出现了这些字符忝在西游记中共出现了这些字符忠在西游记中共出现了这些字符忤在西游记中共出现了这些字符忧在西游记中共出现了这些字符快在西游记中共出现了这些字符念在西游记中共出现了这些字符忻在西游记中共出现了这些字符忽在西游记中共出现了这些字符忿在西游记中共出现了这些字符怀在西游记中共出现了这些字符态在西游记中共出现了这些字符怅在西游记中共出现了这些字符怆在西游记中共出现了这些字符怎在西游记中共出现了这些字符怒在西游记中共出现了这些字符怕在西游记中共出现了这些字符怖在西游记中共出现了这些字符怛在西游记中共出现了这些字符怜在西游记中共出现了这些字符思在西游记中共出现了这些字符怠在西游记中共出现了这些字符怡在西游记中共出现了这些字符急在西游记中共出现了这些字符性在西游记中共出现了这些字符怨在西游记中共出现了这些字符怪在西游记中共出现了这些字符怯在西游记中共出现了这些字符总在西游记中共出现了这些字符恁在西游记中共出现了这些字符恃在西游记中共出现了这些字符恋在西游记中共出现了这些字符恍在西游记中共出现了这些字符恐在西游记中共出现了这些字符恒在西游记中共出现了这些字符恓在西游记中共出现了这些字符恕在西游记中共出现了这些字符恙在西游记中共出现了这些字符恢在西游记中共出现了这些字符恣在西游记中共出现了这些字符恤在西游记中共出现了这些字符恧在西游记中共出现了这些字符恨在西游记中共出现了这些字符恩在西游记中共出现了这些字符恬在西游记中共出现了这些字符恭在西游记中共出现了这些字符息在西游记中共出现了这些字符恰在西游记中共出现了这些字符恳在西游记中共出现了这些字符恶在西游记中共出现了这些字符恹在西游记中共出现了这些字符恻在西游记中共出现了这些字符恼在西游记中共出现了这些字符悄在西游记中共出现了这些字符悉在西游记中共出现了这些字符悔在西游记中共出现了这些字符悖在西游记中共出现了这些字符悚在西游记中共出现了这些字符悟在西游记中共出现了这些字符悠在西游记中共出现了这些字符患在西游记中共出现了这些字符悦在西游记中共出现了这些字符悬在西游记中共出现了这些字符悭在西游记中共出现了这些字符悮在西游记中共出现了这些字符悯在西游记中共出现了这些字符悲在西游记中共出现了这些字符悴在西游记中共出现了这些字符情在西游记中共出现了这些字符惊在西游记中共出现了这些字符惑在西游记中共出现了这些字符惚在西游记中共出现了这些字符惜在西游记中共出现了这些字符惟在西游记中共出现了这些字符惠在西游记中共出现了这些字符惧在西游记中共出现了这些字符惨在西游记中共出现了这些字符惩在西游记中共出现了这些字符惫在西游记中共出现了这些字符惭在西游记中共出现了这些字符惮在西游记中共出现了这些字符惯在西游记中共出现了这些字符惰在西游记中共出现了这些字符想在西游记中共出现了这些字符惴在西游记中共出现了这些字符惶在西游记中共出现了这些字符惹在西游记中共出现了这些字符惺在西游记中共出现了这些字符愁在西游记中共出现了这些字符愆在西游记中共出现了这些字符愈在西游记中共出现了这些字符愉在西游记中共出现了这些字符愍在西游记中共出现了这些字符意在西游记中共出现了这些字符愕在西游记中共出现了这些字符愚在西游记中共出现了这些字符感在西游记中共出现了这些字符愧在西游记中共出现了这些字符愿在西游记中共出现了这些字符慈在西游记中共出现了这些字符慌在西游记中共出现了这些字符慎在西游记中共出现了这些字符慕在西游记中共出现了这些字符慢在西游记中共出现了这些字符慧在西游记中共出现了这些字符慨在西游记中共出现了这些字符慰在西游记中共出现了这些字符慵在西游记中共出现了这些字符慷在西游记中共出现了这些字符慽在西游记中共出现了这些字符憎在西游记中共出现了这些字符憔在西游记中共出现了这些字符憨在西游记中共出现了这些字符憩在西游记中共出现了这些字符懂在西游记中共出现了这些字符懈在西游记中共出现了这些字符懊在西游记中共出现了这些字符懒在西游记中共出现了这些字符懞在西游记中共出现了这些字符懦在西游记中共出现了这些字符懵在西游记中共出现了这些字符懿在西游记中共出现了这些字符戈在西游记中共出现了这些字符戊在西游记中共出现了这些字符戌在西游记中共出现了这些字符戎在西游记中共出现了这些字符戏在西游记中共出现了这些字符成在西游记中共出现了这些字符我在西游记中共出现了这些字符戒在西游记中共出现了这些字符戕在西游记中共出现了这些字符或在西游记中共出现了这些字符戗在西游记中共出现了这些字符战在西游记中共出现了这些字符戚在西游记中共出现了这些字符戛在西游记中共出现了这些字符戟在西游记中共出现了这些字符截在西游记中共出现了这些字符戮在西游记中共出现了这些字符戳在西游记中共出现了这些字符戴在西游记中共出现了这些字符户在西游记中共出现了这些字符房在西游记中共出现了这些字符所在西游记中共出现了这些字符扁在西游记中共出现了这些字符扆在西游记中共出现了这些字符扇在西游记中共出现了这些字符扉在西游记中共出现了这些字符手在西游记中共出现了这些字符才在西游记中共出现了这些字符扎在西游记中共出现了这些字符扑在西游记中共出现了这些字符扒在西游记中共出现了这些字符打在西游记中共出现了这些字符托在西游记中共出现了这些字符扛在西游记中共出现了这些字符扠在西游记中共出现了这些字符扢在西游记中共出现了这些字符扣在西游记中共出现了这些字符执在西游记中共出现了这些字符扫在西游记中共出现了这些字符扬在西游记中共出现了这些字符扭在西游记中共出现了这些字符扮在西游记中共出现了这些字符扯在西游记中共出现了这些字符扰在西游记中共出现了这些字符扳在西游记中共出现了这些字符扶在西游记中共出现了这些字符批在西游记中共出现了这些字符找在西游记中共出现了这些字符承在西游记中共出现了这些字符抄在西游记中共出现了这些字符抅在西游记中共出现了这些字符抉在西游记中共出现了这些字符把在西游记中共出现了这些字符抑在西游记中共出现了这些字符抒在西游记中共出现了这些字符抓在西游记中共出现了这些字符投在西游记中共出现了这些字符抖在西游记中共出现了这些字符抗在西游记中共出现了这些字符折在西游记中共出现了这些字符抚在西游记中共出现了这些字符抛在西游记中共出现了这些字符抟在西游记中共出现了这些字符抠在西游记中共出现了这些字符抢在西游记中共出现了这些字符护在西游记中共出现了这些字符报在西游记中共出现了这些字符披在西游记中共出现了这些字符抬在西游记中共出现了这些字符抱在西游记中共出现了这些字符抵在西游记中共出现了这些字符抹在西游记中共出现了这些字符押在西游记中共出现了这些字符抽在西游记中共出现了这些字符拂在西游记中共出现了这些字符拄在西游记中共出现了这些字符担在西游记中共出现了这些字符拆在西游记中共出现了这些字符拇在西游记中共出现了这些字符拈在西游记中共出现了这些字符拉在西游记中共出现了这些字符拊在西游记中共出现了这些字符拌在西游记中共出现了这些字符拍在西游记中共出现了这些字符拐在西游记中共出现了这些字符拑在西游记中共出现了这些字符拒在西游记中共出现了这些字符拔在西游记中共出现了这些字符拖在西游记中共出现了这些字符拗在西游记中共出现了这些字符拘在西游记中共出现了这些字符拙在西游记中共出现了这些字符拚在西游记中共出现了这些字符招在西游记中共出现了这些字符拜在西游记中共出现了这些字符拟在西游记中共出现了这些字符拢在西游记中共出现了这些字符拣在西游记中共出现了这些字符拥在西游记中共出现了这些字符拦在西游记中共出现了这些字符拧在西游记中共出现了这些字符拨在西游记中共出现了这些字符择在西游记中共出现了这些字符括在西游记中共出现了这些字符拭在西游记中共出现了这些字符拯在西游记中共出现了这些字符拱在西游记中共出现了这些字符拳在西游记中共出现了这些字符拴在西游记中共出现了这些字符拶在西游记中共出现了这些字符拷在西游记中共出现了这些字符拽在西游记中共出现了这些字符拾在西游记中共出现了这些字符拿在西游记中共出现了这些字符持在西游记中共出现了这些字符挂在西游记中共出现了这些字符指在西游记中共出现了这些字符挈在西游记中共出现了这些字符按在西游记中共出现了这些字符挎在西游记中共出现了这些字符挑在西游记中共出现了这些字符挖在西游记中共出现了这些字符挛在西游记中共出现了这些字符挜在西游记中共出现了这些字符挝在西游记中共出现了这些字符挞在西游记中共出现了这些字符挟在西游记中共出现了这些字符挠在西游记中共出现了这些字符挡在西游记中共出现了这些字符挣在西游记中共出现了这些字符挤在西游记中共出现了这些字符挥在西游记中共出现了这些字符挦在西游记中共出现了这些字符挨在西游记中共出现了这些字符挪在西游记中共出现了这些字符挫在西游记中共出现了这些字符振在西游记中共出现了这些字符挹在西游记中共出现了这些字符挺在西游记中共出现了这些字符挽在西游记中共出现了这些字符捆在西游记中共出现了这些字符捉在西游记中共出现了这些字符捋在西游记中共出现了这些字符捍在西游记中共出现了这些字符捎在西游记中共出现了这些字符捏在西游记中共出现了这些字符捐在西游记中共出现了这些字符捕在西游记中共出现了这些字符捘在西游记中共出现了这些字符捞在西游记中共出现了这些字符损在西游记中共出现了这些字符捡在西游记中共出现了这些字符换在西游记中共出现了这些字符捣在西游记中共出现了这些字符捧在西游记中共出现了这些字符据在西游记中共出现了这些字符捱在西游记中共出现了这些字符捶在西游记中共出现了这些字符捷在西游记中共出现了这些字符捻在西游记中共出现了这些字符捽在西游记中共出现了这些字符掀在西游记中共出现了这些字符掂在西游记中共出现了这些字符掇在西游记中共出现了这些字符授在西游记中共出现了这些字符掉在西游记中共出现了这些字符掌在西游记中共出现了这些字符掏在西游记中共出现了这些字符掐在西游记中共出现了这些字符排在西游记中共出现了这些字符掘在西游记中共出现了这些字符掠在西游记中共出现了这些字符探在西游记中共出现了这些字符掣在西游记中共出现了这些字符掤在西游记中共出现了这些字符接在西游记中共出现了这些字符控在西游记中共出现了这些字符推在西游记中共出现了这些字符掩在西游记中共出现了这些字符措在西游记中共出现了这些字符掬在西游记中共出现了这些字符掭在西游记中共出现了这些字符掮在西游记中共出现了这些字符掯在西游记中共出现了这些字符掳在西游记中共出现了这些字符掷在西游记中共出现了这些字符掼在西游记中共出现了这些字符揉在西游记中共出现了这些字符揌在西游记中共出现了这些字符描在西游记中共出现了这些字符提在西游记中共出现了这些字符插在西游记中共出现了这些字符揖在西游记中共出现了这些字符揝在西游记中共出现了这些字符揞在西游记中共出现了这些字符握在西游记中共出现了这些字符揣在西游记中共出现了这些字符揩在西游记中共出现了这些字符揪在西游记中共出现了这些字符揫在西游记中共出现了这些字符揭在西游记中共出现了这些字符揲在西游记中共出现了这些字符援在西游记中共出现了这些字符揸在西游记中共出现了这些字符揾在西游记中共出现了这些字符搀在西游记中共出现了这些字符搁在西游记中共出现了这些字符搂在西游记中共出现了这些字符搅在西游记中共出现了这些字符搊在西游记中共出现了这些字符搓在西游记中共出现了这些字符搔在西游记中共出现了这些字符搕在西游记中共出现了这些字符搜在西游记中共出现了这些字符搠在西游记中共出现了这些字符搧在西游记中共出现了这些字符搪在西游记中共出现了这些字符搫在西游记中共出现了这些字符搬在西游记中共出现了这些字符搭在西游记中共出现了这些字符搲在西游记中共出现了这些字符搴在西游记中共出现了这些字符携在西游记中共出现了这些字符搽在西游记中共出现了这些字符摄在西游记中共出现了这些字符摆在西游记中共出现了这些字符摇在西游记中共出现了这些字符摊在西游记中共出现了这些字符摔在西游记中共出现了这些字符摘在西游记中共出现了这些字符摧在西游记中共出现了这些字符摩在西游记中共出现了这些字符摸在西游记中共出现了这些字符摺在西游记中共出现了这些字符撇在西游记中共出现了这些字符撑在西游记中共出现了这些字符撒在西游记中共出现了这些字符撞在西游记中共出现了这些字符撤在西游记中共出现了这些字符撩在西游记中共出现了这些字符撬在西游记中共出现了这些字符播在西游记中共出现了这些字符撮在西游记中共出现了这些字符撺在西游记中共出现了这些字符撼在西游记中共出现了这些字符擂在西游记中共出现了这些字符擅在西游记中共出现了这些字符操在西游记中共出现了这些字符擎在西游记中共出现了这些字符擒在西游记中共出现了这些字符擞在西游记中共出现了这些字符擢在西游记中共出现了这些字符擦在西游记中共出现了这些字符攀在西游记中共出现了这些字符攒在西游记中共出现了这些字符攘在西游记中共出现了这些字符攥在西游记中共出现了这些字符支在西游记中共出现了这些字符收在西游记中共出现了这些字符攸在西游记中共出现了这些字符改在西游记中共出现了这些字符攻在西游记中共出现了这些字符放在西游记中共出现了这些字符政在西游记中共出现了这些字符故在西游记中共出现了这些字符效在西游记中共出现了这些字符敌在西游记中共出现了这些字符敏在西游记中共出现了这些字符救在西游记中共出现了这些字符敕在西游记中共出现了这些字符敖在西游记中共出现了这些字符教在西游记中共出现了这些字符敛在西游记中共出现了这些字符敝在西游记中共出现了这些字符敞在西游记中共出现了这些字符敢在西游记中共出现了这些字符散在西游记中共出现了这些字符敦在西游记中共出现了这些字符敧在西游记中共出现了这些字符敬在西游记中共出现了这些字符数在西游记中共出现了这些字符敲在西游记中共出现了这些字符整在西游记中共出现了这些字符敷在西游记中共出现了这些字符文在西游记中共出现了这些字符斋在西游记中共出现了这些字符斑在西游记中共出现了这些字符斓在西游记中共出现了这些字符斗在西游记中共出现了这些字符料在西游记中共出现了这些字符斛在西游记中共出现了这些字符斜在西游记中共出现了这些字符斝在西游记中共出现了这些字符斟在西游记中共出现了这些字符斤在西游记中共出现了这些字符斧在西游记中共出现了这些字符斩在西游记中共出现了这些字符斫在西游记中共出现了这些字符断在西游记中共出现了这些字符斯在西游记中共出现了这些字符新在西游记中共出现了这些字符方在西游记中共出现了这些字符施在西游记中共出现了这些字符旁在西游记中共出现了这些字符旃在西游记中共出现了这些字符旄在西游记中共出现了这些字符旅在西游记中共出现了这些字符旋在西游记中共出现了这些字符旌在西游记中共出现了这些字符族在西游记中共出现了这些字符旒在西游记中共出现了这些字符旗在西游记中共出现了这些字符无在西游记中共出现了这些字符既在西游记中共出现了这些字符日在西游记中共出现了这些字符旦在西游记中共出现了这些字符旧在西游记中共出现了这些字符旨在西游记中共出现了这些字符早在西游记中共出现了这些字符旬在西游记中共出现了这些字符旭在西游记中共出现了这些字符旱在西游记中共出现了这些字符时在西游记中共出现了这些字符旷在西游记中共出现了这些字符旺在西游记中共出现了这些字符旻在西游记中共出现了这些字符昂在西游记中共出现了这些字符昆在西游记中共出现了这些字符昊在西游记中共出现了这些字符昌在西游记中共出现了这些字符明在西游记中共出现了这些字符昏在西游记中共出现了这些字符易在西游记中共出现了这些字符昔在西游记中共出现了这些字符昙在西游记中共出现了这些字符星在西游记中共出现了这些字符映在西游记中共出现了这些字符春在西游记中共出现了这些字符昧在西游记中共出现了这些字符昨在西游记中共出现了这些字符昭在西游记中共出现了这些字符是在西游记中共出现了这些字符昴在西游记中共出现了这些字符昼在西游记中共出现了这些字符显在西游记中共出现了这些字符晃在西游记中共出现了这些字符晋在西游记中共出现了这些字符晌在西游记中共出现了这些字符晏在西游记中共出现了这些字符晒在西游记中共出现了这些字符晓在西游记中共出现了这些字符晕在西游记中共出现了这些字符晖在西游记中共出现了这些字符晚在西游记中共出现了这些字符晡在西游记中共出现了这些字符晤在西游记中共出现了这些字符晦在西游记中共出现了这些字符晨在西游记中共出现了这些字符普在西游记中共出现了这些字符景在西游记中共出现了这些字符晰在西游记中共出现了这些字符晴在西游记中共出现了这些字符晶在西游记中共出现了这些字符智在西游记中共出现了这些字符晾在西游记中共出现了这些字符暂在西游记中共出现了这些字符暄在西游记中共出现了这些字符暇在西游记中共出现了这些字符暑在西游记中共出现了这些字符暖在西游记中共出现了这些字符暗在西游记中共出现了这些字符暧在西游记中共出现了这些字符暨在西游记中共出现了这些字符暮在西游记中共出现了这些字符暴在西游记中共出现了这些字符曙在西游记中共出现了这些字符曛在西游记中共出现了这些字符曜在西游记中共出现了这些字符曰在西游记中共出现了这些字符曲在西游记中共出现了这些字符曳在西游记中共出现了这些字符更在西游记中共出现了这些字符書在西游记中共出现了这些字符曹在西游记中共出现了这些字符曼在西游记中共出现了这些字符曾在西游记中共出现了这些字符替在西游记中共出现了这些字符最在西游记中共出现了这些字符月在西游记中共出现了这些字符有在西游记中共出现了这些字符朋在西游记中共出现了这些字符服在西游记中共出现了这些字符朔在西游记中共出现了这些字符朕在西游记中共出现了这些字符朗在西游记中共出现了这些字符望在西游记中共出现了这些字符朝在西游记中共出现了这些字符期在西游记中共出现了这些字符朦在西游记中共出现了这些字符木在西游记中共出现了这些字符未在西游记中共出现了这些字符末在西游记中共出现了这些字符本在西游记中共出现了这些字符札在西游记中共出现了这些字符术在西游记中共出现了这些字符朱在西游记中共出现了这些字符朴在西游记中共出现了这些字符朵在西游记中共出现了这些字符机在西游记中共出现了这些字符朽在西游记中共出现了这些字符杀在西游记中共出现了这些字符杂在西游记中共出现了这些字符权在西游记中共出现了这些字符杆在西游记中共出现了这些字符杈在西游记中共出现了这些字符杉在西游记中共出现了这些字符杌在西游记中共出现了这些字符李在西游记中共出现了这些字符杏在西游记中共出现了这些字符材在西游记中共出现了这些字符村在西游记中共出现了这些字符杓在西游记中共出现了这些字符杖在西游记中共出现了这些字符杜在西游记中共出现了这些字符杞在西游记中共出现了这些字符束在西游记中共出现了这些字符杠在西游记中共出现了这些字符条在西游记中共出现了这些字符来在西游记中共出现了这些字符杨在西游记中共出现了这些字符杪在西游记中共出现了这些字符杭在西游记中共出现了这些字符杯在西游记中共出现了这些字符杰在西游记中共出现了这些字符杲在西游记中共出现了这些字符杳在西游记中共出现了这些字符杵在西游记中共出现了这些字符杷在西游记中共出现了这些字符杻在西游记中共出现了这些字符松在西游记中共出现了这些字符板在西游记中共出现了这些字符极在西游记中共出现了这些字符枇在西游记中共出现了这些字符枉在西游记中共出现了这些字符枋在西游记中共出现了这些字符枒在西游记中共出现了这些字符枓在西游记中共出现了这些字符枕在西游记中共出现了这些字符林在西游记中共出现了这些字符枚在西游记中共出现了这些字符果在西游记中共出现了这些字符枝在西游记中共出现了这些字符枢在西游记中共出现了这些字符枣在西游记中共出现了这些字符枪在西游记中共出现了这些字符枫在西游记中共出现了这些字符枭在西游记中共出现了这些字符枯在西游记中共出现了这些字符枰在西游记中共出现了这些字符架在西游记中共出现了这些字符枷在西游记中共出现了这些字符枸在西游记中共出现了这些字符柄在西游记中共出现了这些字符柏在西游记中共出现了这些字符某在西游记中共出现了这些字符柑在西游记中共出现了这些字符染在西游记中共出现了这些字符柔在西游记中共出现了这些字符柘在西游记中共出现了这些字符柜在西游记中共出现了这些字符柞在西游记中共出现了这些字符查在西游记中共出现了这些字符柩在西游记中共出现了这些字符柬在西游记中共出现了这些字符柮在西游记中共出现了这些字符柯在西游记中共出现了这些字符柰在西游记中共出现了这些字符柱在西游记中共出现了这些字符柳在西游记中共出现了这些字符柴在西游记中共出现了这些字符柿在西游记中共出现了这些字符栅在西游记中共出现了这些字符标在西游记中共出现了这些字符栈在西游记中共出现了这些字符栊在西游记中共出现了这些字符栋在西游记中共出现了这些字符栏在西游记中共出现了这些字符树在西游记中共出现了这些字符栓在西游记中共出现了这些字符栖在西游记中共出现了这些字符栗在西游记中共出现了这些字符校在西游记中共出现了这些字符株在西游记中共出现了这些字符样在西游记中共出现了这些字符核在西游记中共出现了这些字符根在西游记中共出现了这些字符格在西游记中共出现了这些字符栽在西游记中共出现了这些字符桂在西游记中共出现了这些字符桃在西游记中共出现了这些字符桅在西游记中共出现了这些字符案在西游记中共出现了这些字符桌在西游记中共出现了这些字符桐在西游记中共出现了这些字符桑在西游记中共出现了这些字符桓在西游记中共出现了这些字符桔在西游记中共出现了这些字符桠在西游记中共出现了这些字符桡在西游记中共出现了这些字符桥在西游记中共出现了这些字符桧在西游记中共出现了这些字符桨在西游记中共出现了这些字符桩在西游记中共出现了这些字符桶在西游记中共出现了这些字符梁在西游记中共出现了这些字符梃在西游记中共出现了这些字符梅在西游记中共出现了这些字符梆在西游记中共出现了这些字符梓在西游记中共出现了这些字符梢在西游记中共出现了这些字符梦在西游记中共出现了这些字符梧在西游记中共出现了这些字符梨在西游记中共出现了这些字符梭在西游记中共出现了这些字符梯在西游记中共出现了这些字符械在西游记中共出现了这些字符梳在西游记中共出现了这些字符梵在西游记中共出现了这些字符检在西游记中共出现了这些字符棂在西游记中共出现了这些字符棋在西游记中共出现了这些字符棍在西游记中共出现了这些字符棒在西游记中共出现了这些字符棕在西游记中共出现了这些字符棘在西游记中共出现了这些字符棚在西游记中共出现了这些字符棠在西游记中共出现了这些字符棣在西游记中共出现了这些字符棬在西游记中共出现了这些字符森在西游记中共出现了这些字符棱在西游记中共出现了这些字符棵在西游记中共出现了这些字符棹在西游记中共出现了这些字符棺在西游记中共出现了这些字符椅在西游记中共出现了这些字符植在西游记中共出现了这些字符椒在西游记中共出现了这些字符椰在西游记中共出现了这些字符椽在西游记中共出现了这些字符椿在西游记中共出现了这些字符楚在西游记中共出现了这些字符楝在西游记中共出现了这些字符楞在西游记中共出现了这些字符楟在西游记中共出现了这些字符楠在西游记中共出现了这些字符楫在西游记中共出现了这些字符楮在西游记中共出现了这些字符楷在西游记中共出现了这些字符楼在西游记中共出现了这些字符概在西游记中共出现了这些字符榄在西游记中共出现了这些字符榆在西游记中共出现了这些字符榇在西游记中共出现了这些字符榔在西游记中共出现了这些字符榛在西游记中共出现了这些字符榜在西游记中共出现了这些字符榧在西游记中共出现了这些字符榴在西游记中共出现了这些字符榻在西游记中共出现了这些字符榾在西游记中共出现了这些字符槁在西游记中共出现了这些字符槃在西游记中共出现了这些字符槅在西游记中共出现了这些字符槌在西游记中共出现了这些字符槎在西游记中共出现了这些字符槐在西游记中共出现了这些字符槛在西游记中共出现了这些字符槟在西游记中共出现了这些字符槺在西游记中共出现了这些字符槽在西游记中共出现了这些字符槿在西游记中共出现了这些字符樊在西游记中共出现了这些字符樗在西游记中共出现了这些字符模在西游记中共出现了这些字符樨在西游记中共出现了这些字符横在西游记中共出现了这些字符樯在西游记中共出现了这些字符樱在西游记中共出现了这些字符樵在西游记中共出现了这些字符樽在西游记中共出现了这些字符橄在西游记中共出现了这些字符橐在西游记中共出现了这些字符橘在西游记中共出现了这些字符橙在西游记中共出现了这些字符橦在西游记中共出现了这些字符橹在西游记中共出现了这些字符檀在西游记中共出现了这些字符檄在西游记中共出现了这些字符檎在西游记中共出现了这些字符檐在西游记中共出现了这些字符檠在西游记中共出现了这些字符欠在西游记中共出现了这些字符次在西游记中共出现了这些字符欢在西游记中共出现了这些字符欣在西游记中共出现了这些字符欤在西游记中共出现了这些字符欧在西游记中共出现了这些字符欲在西游记中共出现了这些字符欷在西游记中共出现了这些字符欹在西游记中共出现了这些字符欺在西游记中共出现了这些字符款在西游记中共出现了这些字符歇在西游记中共出现了这些字符歉在西游记中共出现了这些字符歌在西游记中共出现了这些字符止在西游记中共出现了这些字符正在西游记中共出现了这些字符此在西游记中共出现了这些字符步在西游记中共出现了这些字符武在西游记中共出现了这些字符歪在西游记中共出现了这些字符歹在西游记中共出现了这些字符死在西游记中共出现了这些字符殁在西游记中共出现了这些字符殃在西游记中共出现了这些字符殄在西游记中共出现了这些字符殊在西游记中共出现了这些字符残在西游记中共出现了这些字符殒在西游记中共出现了这些字符殓在西游记中共出现了这些字符殖在西游记中共出现了这些字符殡在西游记中共出现了这些字符段在西游记中共出现了这些字符殷在西游记中共出现了这些字符殿在西游记中共出现了这些字符毁在西游记中共出现了这些字符毂在西游记中共出现了这些字符毋在西游记中共出现了这些字符母在西游记中共出现了这些字符每在西游记中共出现了这些字符毒在西游记中共出现了这些字符比在西游记中共出现了这些字符毕在西游记中共出现了这些字符毗在西游记中共出现了这些字符毛在西游记中共出现了这些字符毡在西游记中共出现了这些字符毧在西游记中共出现了这些字符毫在西游记中共出现了这些字符毬在西游记中共出现了这些字符毯在西游记中共出现了这些字符氅在西游记中共出现了这些字符氏在西游记中共出现了这些字符氐在西游记中共出现了这些字符民在西游记中共出现了这些字符气在西游记中共出现了这些字符氛在西游记中共出现了这些字符氤在西游记中共出现了这些字符氲在西游记中共出现了这些字符水在西游记中共出现了这些字符永在西游记中共出现了这些字符汀在西游记中共出现了这些字符汁在西游记中共出现了这些字符求在西游记中共出现了这些字符汉在西游记中共出现了这些字符汊在西游记中共出现了这些字符汗在西游记中共出现了这些字符汛在西游记中共出现了这些字符汝在西游记中共出现了这些字符汞在西游记中共出现了这些字符江在西游记中共出现了这些字符池在西游记中共出现了这些字符污在西游记中共出现了这些字符汤在西游记中共出现了这些字符汨在西游记中共出现了这些字符汪在西游记中共出现了这些字符汲在西游记中共出现了这些字符汹在西游记中共出现了这些字符汽在西游记中共出现了这些字符汾在西游记中共出现了这些字符沁在西游记中共出现了这些字符沃在西游记中共出现了这些字符沉在西游记中共出现了这些字符沌在西游记中共出现了这些字符沍在西游记中共出现了这些字符沐在西游记中共出现了这些字符沓在西游记中共出现了这些字符沙在西游记中共出现了这些字符沛在西游记中共出现了这些字符沟在西游记中共出现了这些字符没在西游记中共出现了这些字符沤在西游记中共出现了这些字符沥在西游记中共出现了这些字符沦在西游记中共出现了这些字符沧在西游记中共出现了这些字符沫在西游记中共出现了这些字符沱在西游记中共出现了这些字符河在西游记中共出现了这些字符沸在西游记中共出现了这些字符油在西游记中共出现了这些字符治在西游记中共出现了这些字符沼在西游记中共出现了这些字符沽在西游记中共出现了这些字符沾在西游记中共出现了这些字符沿在西游记中共出现了这些字符泄在西游记中共出现了这些字符泉在西游记中共出现了这些字符泊在西游记中共出现了这些字符泌在西游记中共出现了这些字符泓在西游记中共出现了这些字符法在西游记中共出现了这些字符泗在西游记中共出现了这些字符泛在西游记中共出现了这些字符泞在西游记中共出现了这些字符泠在西游记中共出现了这些字符泡在西游记中共出现了这些字符波在西游记中共出现了这些字符泣在西游记中共出现了这些字符泥在西游记中共出现了这些字符注在西游记中共出现了这些字符泪在西游记中共出现了这些字符泫在西游记中共出现了这些字符泯在西游记中共出现了这些字符泰在西游记中共出现了这些字符泱在西游记中共出现了这些字符泻在西游记中共出现了这些字符泼在西游记中共出现了这些字符泽在西游记中共出现了这些字符泾在西游记中共出现了这些字符洁在西游记中共出现了这些字符洋在西游记中共出现了这些字符洒在西游记中共出现了这些字符洗在西游记中共出现了这些字符洛在西游记中共出现了这些字符洞在西游记中共出现了这些字符津在西游记中共出现了这些字符洪在西游记中共出现了这些字符洲在西游记中共出现了这些字符活在西游记中共出现了这些字符洼在西游记中共出现了这些字符派在西游记中共出现了这些字符流在西游记中共出现了这些字符浅在西游记中共出现了这些字符浆在西游记中共出现了这些字符浇在西游记中共出现了这些字符浊在西游记中共出现了这些字符测在西游记中共出现了这些字符浍在西游记中共出现了这些字符济在西游记中共出现了这些字符浑在西游记中共出现了这些字符浓在西游记中共出现了这些字符浙在西游记中共出现了这些字符浦在西游记中共出现了这些字符浩在西游记中共出现了这些字符浪在西游记中共出现了这些字符浮在西游记中共出现了这些字符浴在西游记中共出现了这些字符海在西游记中共出现了这些字符浸在西游记中共出现了这些字符浼在西游记中共出现了这些字符涂在西游记中共出现了这些字符涅在西游记中共出现了这些字符消在西游记中共出现了这些字符涉在西游记中共出现了这些字符涌在西游记中共出现了这些字符涎在西游记中共出现了这些字符涓在西游记中共出现了这些字符涕在西游记中共出现了这些字符涛在西游记中共出现了这些字符涝在西游记中共出现了这些字符涤在西游记中共出现了这些字符润在西游记中共出现了这些字符涧在西游记中共出现了这些字符涨在西游记中共出现了这些字符涩在西游记中共出现了这些字符涯在西游记中共出现了这些字符液在西游记中共出现了这些字符涴在西游记中共出现了这些字符涵在西游记中共出现了这些字符涸在西游记中共出现了这些字符淄在西游记中共出现了这些字符淅在西游记中共出现了这些字符淇在西游记中共出现了这些字符淋在西游记中共出现了这些字符淌在西游记中共出现了这些字符淘在西游记中共出现了这些字符淙在西游记中共出现了这些字符淡在西游记中共出现了这些字符淤在西游记中共出现了这些字符淫在西游记中共出现了这些字符淬在西游记中共出现了这些字符淮在西游记中共出现了这些字符深在西游记中共出现了这些字符淳在西游记中共出现了这些字符混在西游记中共出现了这些字符淹在西游记中共出现了这些字符添在西游记中共出现了这些字符清在西游记中共出现了这些字符渊在西游记中共出现了这些字符渍在西游记中共出现了这些字符渎在西游记中共出现了这些字符渐在西游记中共出现了这些字符渔在西游记中共出现了这些字符渗在西游记中共出现了这些字符渚在西游记中共出现了这些字符渠在西游记中共出现了这些字符渡在西游记中共出现了这些字符渣在西游记中共出现了这些字符渤在西游记中共出现了这些字符温在西游记中共出现了这些字符渭在西游记中共出现了这些字符港在西游记中共出现了这些字符渰在西游记中共出现了这些字符渴在西游记中共出现了这些字符游在西游记中共出现了这些字符渺在西游记中共出现了这些字符湅在西游记中共出现了这些字符湍在西游记中共出现了这些字符湖在西游记中共出现了这些字符湘在西游记中共出现了这些字符湛在西游记中共出现了这些字符湲在西游记中共出现了这些字符湾在西游记中共出现了这些字符湿在西游记中共出现了这些字符溅在西游记中共出现了这些字符源在西游记中共出现了这些字符溜在西游记中共出现了这些字符溟在西游记中共出现了这些字符溢在西游记中共出现了这些字符溪在西游记中共出现了这些字符溲在西游记中共出现了这些字符溶在西游记中共出现了这些字符溺在西游记中共出现了这些字符滂在西游记中共出现了这些字符滉在西游记中共出现了这些字符滋在西游记中共出现了这些字符滑在西游记中共出现了这些字符滔在西游记中共出现了这些字符滚在西游记中共出现了这些字符滞在西游记中共出现了这些字符满在西游记中共出现了这些字符滥在西游记中共出现了这些字符滩在西游记中共出现了这些字符滴在西游记中共出现了这些字符漆在西游记中共出现了这些字符漉在西游记中共出现了这些字符漏在西游记中共出现了这些字符漓在西游记中共出现了这些字符演在西游记中共出现了这些字符漕在西游记中共出现了这些字符漠在西游记中共出现了这些字符漩在西游记中共出现了这些字符漫在西游记中共出现了这些字符漱在西游记中共出现了这些字符漷在西游记中共出现了这些字符漾在西游记中共出现了这些字符潇在西游记中共出现了这些字符潘在西游记中共出现了这些字符潜在西游记中共出现了这些字符潠在西游记中共出现了这些字符潦在西游记中共出现了这些字符潭在西游记中共出现了这些字符潮在西游记中共出现了这些字符潺在西游记中共出现了这些字符澄在西游记中共出现了这些字符澌在西游记中共出现了这些字符澜在西游记中共出现了这些字符澡在西游记中共出现了这些字符澳在西游记中共出现了这些字符澹在西游记中共出现了这些字符激在西游记中共出现了这些字符濛在西游记中共出现了这些字符濯在西游记中共出现了这些字符瀑在西游记中共出现了这些字符瀛在西游记中共出现了这些字符瀼在西游记中共出现了这些字符灌在西游记中共出现了这些字符灒在西游记中共出现了这些字符灞在西游记中共出现了这些字符火在西游记中共出现了这些字符灭在西游记中共出现了这些字符灯在西游记中共出现了这些字符灰在西游记中共出现了这些字符灵在西游记中共出现了这些字符灶在西游记中共出现了这些字符灸在西游记中共出现了这些字符灼在西游记中共出现了这些字符灾在西游记中共出现了这些字符灿在西游记中共出现了这些字符炁在西游记中共出现了这些字符炉在西游记中共出现了这些字符炊在西游记中共出现了这些字符炎在西游记中共出现了这些字符炒在西游记中共出现了这些字符炖在西游记中共出现了这些字符炙在西游记中共出现了这些字符炫在西游记中共出现了这些字符炬在西游记中共出现了这些字符炭在西游记中共出现了这些字符炮在西游记中共出现了这些字符炳在西游记中共出现了这些字符炷在西游记中共出现了这些字符炸在西游记中共出现了这些字符点在西游记中共出现了这些字符炼在西游记中共出现了这些字符炽在西游记中共出现了这些字符烁在西游记中共出现了这些字符烂在西游记中共出现了这些字符烈在西游记中共出现了这些字符烘在西游记中共出现了这些字符烙在西游记中共出现了这些字符烛在西游记中共出现了这些字符烟在西游记中共出现了这些字符烤在西游记中共出现了这些字符烦在西游记中共出现了这些字符烧在西游记中共出现了这些字符烨在西游记中共出现了这些字符烫在西游记中共出现了这些字符烬在西游记中共出现了这些字符热在西游记中共出现了这些字符烹在西游记中共出现了这些字符焃在西游记中共出现了这些字符焉在西游记中共出现了这些字符焕在西游记中共出现了这些字符焙在西游记中共出现了这些字符焚在西游记中共出现了这些字符焜在西游记中共出现了这些字符焦在西游记中共出现了这些字符焯在西游记中共出现了这些字符焰在西游记中共出现了这些字符然在西游记中共出现了这些字符煅在西游记中共出现了这些字符煌在西游记中共出现了这些字符煎在西游记中共出现了这些字符煞在西游记中共出现了这些字符煠在西游记中共出现了这些字符煤在西游记中共出现了这些字符照在西游记中共出现了这些字符煨在西游记中共出现了这些字符煮在西游记中共出现了这些字符煼在西游记中共出现了这些字符煽在西游记中共出现了这些字符熄在西游记中共出现了这些字符熊在西游记中共出现了这些字符熌在西游记中共出现了这些字符熏在西游记中共出现了这些字符熔在西游记中共出现了这些字符熙在西游记中共出现了这些字符熝在西游记中共出现了这些字符熟在西游记中共出现了这些字符熬在西游记中共出现了这些字符熯在西游记中共出现了这些字符熳在西游记中共出现了这些字符燃在西游记中共出现了这些字符燎在西游记中共出现了这些字符燕在西游记中共出现了这些字符燥在西游记中共出现了这些字符燧在西游记中共出现了这些字符爆在西游记中共出现了这些字符爇在西游记中共出现了这些字符爊在西游记中共出现了这些字符爨在西游记中共出现了这些字符爪在西游记中共出现了这些字符爬在西游记中共出现了这些字符爰在西游记中共出现了这些字符爱在西游记中共出现了这些字符爵在西游记中共出现了这些字符父在西游记中共出现了这些字符爷在西游记中共出现了这些字符爹在西游记中共出现了这些字符爻在西游记中共出现了这些字符爽在西游记中共出现了这些字符片在西游记中共出现了这些字符版在西游记中共出现了这些字符牌在西游记中共出现了这些字符牒在西游记中共出现了这些字符牖在西游记中共出现了这些字符牙在西游记中共出现了这些字符牛在西游记中共出现了这些字符牟在西游记中共出现了这些字符牡在西游记中共出现了这些字符牢在西游记中共出现了这些字符牧在西游记中共出现了这些字符物在西游记中共出现了这些字符牯在西游记中共出现了这些字符牲在西游记中共出现了这些字符牵在西游记中共出现了这些字符牸在西游记中共出现了这些字符特在西游记中共出现了这些字符牺在西游记中共出现了这些字符犀在西游记中共出现了这些字符犁在西游记中共出现了这些字符犊在西游记中共出现了这些字符犒在西游记中共出现了这些字符犬在西游记中共出现了这些字符犭在西游记中共出现了这些字符犯在西游记中共出现了这些字符犴在西游记中共出现了这些字符状在西游记中共出现了这些字符犹在西游记中共出现了这些字符犺在西游记中共出现了这些字符犼在西游记中共出现了这些字符狂在西游记中共出现了这些字符狈在西游记中共出现了这些字符狎在西游记中共出现了这些字符狐在西游记中共出现了这些字符狔在西游记中共出现了这些字符狗在西游记中共出现了这些字符狞在西游记中共出现了这些字符狠在西游记中共出现了这些字符狡在西游记中共出现了这些字符狢在西游记中共出现了这些字符狤在西游记中共出现了这些字符狨在西游记中共出现了这些字符独在西游记中共出现了这些字符狭在西游记中共出现了这些字符狮在西游记中共出现了这些字符狰在西游记中共出现了这些字符狱在西游记中共出现了这些字符狲在西游记中共出现了这些字符狸在西游记中共出现了这些字符狻在西游记中共出现了这些字符狼在西游记中共出现了这些字符猁在西游记中共出现了这些字符猊在西游记中共出现了这些字符猍在西游记中共出现了这些字符猎在西游记中共出现了这些字符猕在西游记中共出现了这些字符猖在西游记中共出现了这些字符猛在西游记中共出现了这些字符猜在西游记中共出现了这些字符猢在西游记中共出现了这些字符猥在西游记中共出现了这些字符猩在西游记中共出现了这些字符猪在西游记中共出现了这些字符猫在西游记中共出现了这些字符献在西游记中共出现了这些字符猱在西游记中共出现了这些字符猴在西游记中共出现了这些字符猷在西游记中共出现了这些字符猾在西游记中共出现了这些字符猿在西游记中共出现了这些字符獐在西游记中共出现了这些字符獒在西游记中共出现了这些字符獗在西游记中共出现了这些字符獝在西游记中共出现了这些字符獠在西游记中共出现了这些字符獬在西游记中共出现了这些字符獭在西游记中共出现了这些字符獾在西游记中共出现了这些字符玄在西游记中共出现了这些字符率在西游记中共出现了这些字符玉在西游记中共出现了这些字符王在西游记中共出现了这些字符玎在西游记中共出现了这些字符玑在西游记中共出现了这些字符玛在西游记中共出现了这些字符玠在西游记中共出现了这些字符玨在西游记中共出现了这些字符玩在西游记中共出现了这些字符玫在西游记中共出现了这些字符环在西游记中共出现了这些字符现在西游记中共出现了这些字符玲在西游记中共出现了这些字符玳在西游记中共出现了这些字符玷在西游记中共出现了这些字符玻在西游记中共出现了这些字符珀在西游记中共出现了这些字符珉在西游记中共出现了这些字符珊在西游记中共出现了这些字符珍在西游记中共出现了这些字符珑在西游记中共出现了这些字符珠在西游记中共出现了这些字符珪在西游记中共出现了这些字符班在西游记中共出现了这些字符珮在西游记中共出现了这些字符珰在西游记中共出现了这些字符球在西游记中共出现了这些字符琅在西游记中共出现了这些字符理在西游记中共出现了这些字符琉在西游记中共出现了这些字符琐在西游记中共出现了这些字符琗在西游记中共出现了这些字符琚在西游记中共出现了这些字符琢在西游记中共出现了这些字符琥在西游记中共出现了这些字符琪在西游记中共出现了这些字符琮在西游记中共出现了这些字符琳在西游记中共出现了这些字符琴在西游记中共出现了这些字符琵在西游记中共出现了这些字符琶在西游记中共出现了这些字符琼在西游记中共出现了这些字符瑀在西游记中共出现了这些字符瑁在西游记中共出现了这些字符瑕在西游记中共出现了这些字符瑙在西游记中共出现了这些字符瑚在西游记中共出现了这些字符瑜在西游记中共出现了这些字符瑞在西游记中共出现了这些字符瑟在西游记中共出现了这些字符瑠在西游记中共出现了这些字符瑰在西游记中共出现了这些字符瑶在西游记中共出现了这些字符璃在西游记中共出现了这些字符璋在西游记中共出现了这些字符璞在西游记中共出现了这些字符璧在西游记中共出现了这些字符瓜在西游记中共出现了这些字符瓠在西游记中共出现了这些字符瓢在西游记中共出现了这些字符瓣在西游记中共出现了这些字符瓦在西游记中共出现了这些字符瓮在西游记中共出现了这些字符瓯在西游记中共出现了这些字符瓴在西游记中共出现了这些字符瓶在西游记中共出现了这些字符甘在西游记中共出现了这些字符甚在西游记中共出现了这些字符甜在西游记中共出现了这些字符生在西游记中共出现了这些字符甥在西游记中共出现了这些字符用在西游记中共出现了这些字符甫在西游记中共出现了这些字符田在西游记中共出现了这些字符由在西游记中共出现了这些字符甲在西游记中共出现了这些字符申在西游记中共出现了这些字符电在西游记中共出现了这些字符男在西游记中共出现了这些字符画在西游记中共出现了这些字符畅在西游记中共出现了这些字符界在西游记中共出现了这些字符畏在西游记中共出现了这些字符畔在西游记中共出现了这些字符留在西游记中共出现了这些字符畜在西游记中共出现了这些字符略在西游记中共出现了这些字符畦在西游记中共出现了这些字符番在西游记中共出现了这些字符畴在西游记中共出现了这些字符畿在西游记中共出现了这些字符疆在西游记中共出现了这些字符疏在西游记中共出现了这些字符疑在西游记中共出现了这些字符疗在西游记中共出现了这些字符疙在西游记中共出现了这些字符疤在西游记中共出现了这些字符疥在西游记中共出现了这些字符疮在西游记中共出现了这些字符疯在西游记中共出现了这些字符疲在西游记中共出现了这些字符疴在西游记中共出现了这些字符疸在西游记中共出现了这些字符疼在西游记中共出现了这些字符疾在西游记中共出现了这些字符病在西游记中共出现了这些字符症在西游记中共出现了这些字符痈在西游记中共出现了这些字符痊在西游记中共出现了这些字符痒在西游记中共出现了这些字符痕在西游记中共出现了这些字符痖在西游记中共出现了这些字符痛在西游记中共出现了这些字符痞在西游记中共出现了这些字符痨在西游记中共出现了这些字符痫在西游记中共出现了这些字符痰在西游记中共出现了这些字符痴在西游记中共出现了这些字符瘖在西游记中共出现了这些字符瘟在西游记中共出现了这些字符瘢在西游记中共出现了这些字符瘦在西游记中共出现了这些字符瘫在西游记中共出现了这些字符瘴在西游记中共出现了这些字符瘼在西游记中共出现了这些字符癀在西游记中共出现了这些字符癃在西游记中共出现了这些字符癞在西游记中共出现了这些字符癫在西游记中共出现了这些字符癸在西游记中共出现了这些字符登在西游记中共出现了这些字符白在西游记中共出现了这些字符百在西游记中共出现了这些字符皂在西游记中共出现了这些字符的在西游记中共出现了这些字符皆在西游记中共出现了这些字符皇在西游记中共出现了这些字符皈在西游记中共出现了这些字符皋在西游记中共出现了这些字符皎在西游记中共出现了这些字符皐在西游记中共出现了这些字符皓在西游记中共出现了这些字符皘在西游记中共出现了这些字符皤在西游记中共出现了这些字符皮在西游记中共出现了这些字符皱在西游记中共出现了这些字符皻在西游记中共出现了这些字符皿在西游记中共出现了这些字符盂在西游记中共出现了这些字符盅在西游记中共出现了这些字符盆在西游记中共出现了这些字符盈在西游记中共出现了这些字符益在西游记中共出现了这些字符盏在西游记中共出现了这些字符盐在西游记中共出现了这些字符监在西游记中共出现了这些字符盒在西游记中共出现了这些字符盔在西游记中共出现了这些字符盖在西游记中共出现了这些字符盗在西游记中共出现了这些字符盘在西游记中共出现了这些字符盛在西游记中共出现了这些字符盞在西游记中共出现了这些字符盟在西游记中共出现了这些字符目在西游记中共出现了这些字符盱在西游记中共出现了这些字符盲在西游记中共出现了这些字符直在西游记中共出现了这些字符相在西游记中共出现了这些字符盹在西游记中共出现了这些字符盼在西游记中共出现了这些字符省在西游记中共出现了这些字符眉在西游记中共出现了这些字符看在西游记中共出现了这些字符眙在西游记中共出现了这些字符真在西游记中共出现了这些字符眠在西游记中共出现了这些字符眩在西游记中共出现了这些字符眭在西游记中共出现了这些字符眷在西游记中共出现了这些字符眸在西游记中共出现了这些字符眺在西游记中共出现了这些字符眼在西游记中共出现了这些字符着在西游记中共出现了这些字符睁在西游记中共出现了这些字符睆在西游记中共出现了这些字符睍在西游记中共出现了这些字符睖在西游记中共出现了这些字符睛在西游记中共出现了这些字符睡在西游记中共出现了这些字符督在西游记中共出现了这些字符睦在西游记中共出现了这些字符睬在西游记中共出现了这些字符睮在西游记中共出现了这些字符睳在西游记中共出现了这些字符睹在西游记中共出现了这些字符睺在西游记中共出现了这些字符瞅在西游记中共出现了这些字符瞌在西游记中共出现了这些字符瞎在西游记中共出现了这些字符瞑在西游记中共出现了这些字符瞒在西游记中共出现了这些字符瞔在西游记中共出现了这些字符瞥在西游记中共出现了这些字符瞧在西游记中共出现了这些字符瞬在西游记中共出现了这些字符瞰在西游记中共出现了这些字符瞻在西游记中共出现了这些字符瞽在西游记中共出现了这些字符矗在西游记中共出现了这些字符矛在西游记中共出现了这些字符矢在西游记中共出现了这些字符矣在西游记中共出现了这些字符知在西游记中共出现了这些字符矧在西游记中共出现了这些字符矩在西游记中共出现了这些字符矫在西游记中共出现了这些字符矬在西游记中共出现了这些字符短在西游记中共出现了这些字符矮在西游记中共出现了这些字符石在西游记中共出现了这些字符砂在西游记中共出现了这些字符砌在西游记中共出现了这些字符砍在西游记中共出现了这些字符砑在西游记中共出现了这些字符砖在西游记中共出现了这些字符砚在西游记中共出现了这些字符砥在西游记中共出现了这些字符砧在西游记中共出现了这些字符破在西游记中共出现了这些字符砺在西游记中共出现了这些字符砾在西游记中共出现了这些字符硕在西游记中共出现了这些字符硗在西游记中共出现了这些字符硝在西游记中共出现了这些字符硬在西游记中共出现了这些字符碌在西游记中共出现了这些字符碍在西游记中共出现了这些字符碎在西游记中共出现了这些字符碑在西游记中共出现了这些字符碓在西游记中共出现了这些字符碗在西游记中共出现了这些字符碛在西游记中共出现了这些字符碟在西游记中共出现了这些字符碣在西游记中共出现了这些字符碧在西游记中共出现了这些字符碴在西游记中共出现了这些字符確在西游记中共出现了这些字符碾在西游记中共出现了这些字符磁在西游记中共出现了这些字符磊在西游记中共出现了这些字符磐在西游记中共出现了这些字符磕在西游记中共出现了这些字符磨在西游记中共出现了这些字符磬在西游记中共出现了这些字符磲在西游记中共出现了这些字符磴在西游记中共出现了这些字符磷在西游记中共出现了这些字符示在西游记中共出现了这些字符礼在西游记中共出现了这些字符社在西游记中共出现了这些字符祀在西游记中共出现了这些字符祇在西游记中共出现了这些字符祈在西游记中共出现了这些字符祐在西游记中共出现了这些字符祖在西游记中共出现了这些字符祗在西游记中共出现了这些字符祚在西游记中共出现了这些字符祛在西游记中共出现了这些字符祝在西游记中共出现了这些字符神在西游记中共出现了这些字符祟在西游记中共出现了这些字符祠在西游记中共出现了这些字符祥在西游记中共出现了这些字符票在西游记中共出现了这些字符祭在西游记中共出现了这些字符祯在西游记中共出现了这些字符祷在西游记中共出现了这些字符祸在西游记中共出现了这些字符禀在西游记中共出现了这些字符禁在西游记中共出现了这些字符禄在西游记中共出现了这些字符禅在西游记中共出现了这些字符福在西游记中共出现了这些字符禳在西游记中共出现了这些字符禹在西游记中共出现了这些字符禺在西游记中共出现了这些字符离在西游记中共出现了这些字符禽在西游记中共出现了这些字符禾在西游记中共出现了这些字符秀在西游记中共出现了这些字符私在西游记中共出现了这些字符秃在西游记中共出现了这些字符秇在西游记中共出现了这些字符秉在西游记中共出现了这些字符秋在西游记中共出现了这些字符种在西游记中共出现了这些字符科在西游记中共出现了这些字符秘在西游记中共出现了这些字符租在西游记中共出现了这些字符秤在西游记中共出现了这些字符秦在西游记中共出现了这些字符秧在西游记中共出现了这些字符积在西游记中共出现了这些字符称在西游记中共出现了这些字符移在西游记中共出现了这些字符秽在西游记中共出现了这些字符秾在西游记中共出现了这些字符稀在西游记中共出现了这些字符程在西游记中共出现了这些字符稍在西游记中共出现了这些字符稔在西游记中共出现了这些字符稚在西游记中共出现了这些字符稠在西游记中共出现了这些字符稳在西游记中共出现了这些字符稷在西游记中共出现了这些字符稻在西游记中共出现了这些字符稼在西游记中共出现了这些字符稽在西游记中共出现了这些字符穑在西游记中共出现了这些字符穗在西游记中共出现了这些字符穰在西游记中共出现了这些字符穴在西游记中共出现了这些字符究在西游记中共出现了这些字符穷在西游记中共出现了这些字符穹在西游记中共出现了这些字符空在西游记中共出现了这些字符穿在西游记中共出现了这些字符突在西游记中共出现了这些字符窃在西游记中共出现了这些字符窄在西游记中共出现了这些字符窈在西游记中共出现了这些字符窊在西游记中共出现了这些字符窍在西游记中共出现了这些字符窎在西游记中共出现了这些字符窑在西游记中共出现了这些字符窕在西游记中共出现了这些字符窖在西游记中共出现了这些字符窗在西游记中共出现了这些字符窘在西游记中共出现了这些字符窜在西游记中共出现了这些字符窝在西游记中共出现了这些字符窟在西游记中共出现了这些字符窠在西游记中共出现了这些字符窥在西游记中共出现了这些字符窦在西游记中共出现了这些字符窿在西游记中共出现了这些字符立在西游记中共出现了这些字符竖在西游记中共出现了这些字符站在西游记中共出现了这些字符竞在西游记中共出现了这些字符竟在西游记中共出现了这些字符章在西游记中共出现了这些字符童在西游记中共出现了这些字符竦在西游记中共出现了这些字符竭在西游记中共出现了这些字符端在西游记中共出现了这些字符竹在西游记中共出现了这些字符竺在西游记中共出现了这些字符竿在西游记中共出现了这些字符笃在西游记中共出现了这些字符笄在西游记中共出现了这些字符笆在西游记中共出现了这些字符笊在西游记中共出现了这些字符笋在西游记中共出现了这些字符笏在西游记中共出现了这些字符笑在西游记中共出现了这些字符笔在西游记中共出现了这些字符笙在西游记中共出现了这些字符笛在西游记中共出现了这些字符笞在西游记中共出现了这些字符笠在西游记中共出现了这些字符笤在西游记中共出现了这些字符符在西游记中共出现了这些字符第在西游记中共出现了这些字符笼在西游记中共出现了这些字符筇在西游记中共出现了这些字符等在西游记中共出现了这些字符筋在西游记中共出现了这些字符筏在西游记中共出现了这些字符筐在西游记中共出现了这些字符筑在西游记中共出现了这些字符筒在西游记中共出现了这些字符答在西游记中共出现了这些字符策在西游记中共出现了这些字符筛在西游记中共出现了这些字符筝在西游记中共出现了这些字符筠在西游记中共出现了这些字符筮在西游记中共出现了这些字符筵在西游记中共出现了这些字符筹在西游记中共出现了这些字符签在西游记中共出现了这些字符简在西游记中共出现了这些字符箍在西游记中共出现了这些字符箓在西游记中共出现了这些字符箔在西游记中共出现了这些字符箕在西游记中共出现了这些字符算在西游记中共出现了这些字符箝在西游记中共出现了这些字符管在西游记中共出现了这些字符箧在西游记中共出现了这些字符箨在西游记中共出现了这些字符箪在西游记中共出现了这些字符箫在西游记中共出现了这些字符箬在西游记中共出现了这些字符箭在西游记中共出现了这些字符箱在西游记中共出现了这些字符箴在西游记中共出现了这些字符箸在西游记中共出现了这些字符篁在西游记中共出现了这些字符篆在西游记中共出现了这些字符篇在西游记中共出现了这些字符篏在西游记中共出现了这些字符篓在西游记中共出现了这些字符篙在西游记中共出现了这些字符篡在西游记中共出现了这些字符篮在西游记中共出现了这些字符篱在西游记中共出现了这些字符篷在西游记中共出现了这些字符篾在西游记中共出现了这些字符簆在西游记中共出现了这些字符簇在西游记中共出现了这些字符簌在西游记中共出现了这些字符簧在西游记中共出现了这些字符簪在西游记中共出现了这些字符簸在西游记中共出现了这些字符簿在西游记中共出现了这些字符籁在西游记中共出现了这些字符籍在西游记中共出现了这些字符籥在西游记中共出现了这些字符米在西游记中共出现了这些字符籴在西游记中共出现了这些字符类在西游记中共出现了这些字符粉在西游记中共出现了这些字符粒在西游记中共出现了这些字符粗在西游记中共出现了这些字符粘在西游记中共出现了这些字符粟在西游记中共出现了这些字符粥在西游记中共出现了这些字符粪在西游记中共出现了这些字符粮在西游记中共出现了这些字符粱在西游记中共出现了这些字符粲在西游记中共出现了这些字符粽在西游记中共出现了这些字符精在西游记中共出现了这些字符糊在西游记中共出现了这些字符糕在西游记中共出现了这些字符糖在西游记中共出现了这些字符糙在西游记中共出现了这些字符糜在西游记中共出现了这些字符糟在西游记中共出现了这些字符糠在西游记中共出现了这些字符糯在西游记中共出现了这些字符糰在西游记中共出现了这些字符系在西游记中共出现了这些字符紊在西游记中共出现了这些字符素在西游记中共出现了这些字符索在西游记中共出现了这些字符紧在西游记中共出现了这些字符紫在西游记中共出现了这些字符累在西游记中共出现了这些字符絮在西游记中共出现了这些字符絯在西游记中共出现了这些字符縺在西游记中共出现了这些字符繁在西游记中共出现了这些字符繨在西游记中共出现了这些字符纠在西游记中共出现了这些字符红在西游记中共出现了这些字符纤在西游记中共出现了这些字符纥在西游记中共出现了这些字符约在西游记中共出现了这些字符级在西游记中共出现了这些字符纪在西游记中共出现了这些字符纫在西游记中共出现了这些字符纬在西游记中共出现了这些字符纭在西游记中共出现了这些字符纯在西游记中共出现了这些字符纱在西游记中共出现了这些字符纲在西游记中共出现了这些字符纳在西游记中共出现了这些字符纵在西游记中共出现了这些字符纶在西游记中共出现了这些字符纷在西游记中共出现了这些字符纸在西游记中共出现了这些字符纹在西游记中共出现了这些字符纺在西游记中共出现了这些字符纻在西游记中共出现了这些字符纽在西游记中共出现了这些字符线在西游记中共出现了这些字符练在西游记中共出现了这些字符细在西游记中共出现了这些字符织在西游记中共出现了这些字符终在西游记中共出现了这些字符绊在西游记中共出现了这些字符绍在西游记中共出现了这些字符绎在西游记中共出现了这些字符经在西游记中共出现了这些字符绑在西游记中共出现了这些字符绒在西游记中共出现了这些字符结在西游记中共出现了这些字符绔在西游记中共出现了这些字符绕在西游记中共出现了这些字符绘在西游记中共出现了这些字符给在西游记中共出现了这些字符绚在西游记中共出现了这些字符绛在西游记中共出现了这些字符络在西游记中共出现了这些字符绝在西游记中共出现了这些字符绞在西游记中共出现了这些字符统在西游记中共出现了这些字符绡在西游记中共出现了这些字符绢在西游记中共出现了这些字符绣在西游记中共出现了这些字符绦在西游记中共出现了这些字符继在西游记中共出现了这些字符绩在西游记中共出现了这些字符绪在西游记中共出现了这些字符绫在西游记中共出现了这些字符续在西游记中共出现了这些字符绮在西游记中共出现了这些字符绰在西游记中共出现了这些字符绳在西游记中共出现了这些字符维在西游记中共出现了这些字符绵在西游记中共出现了这些字符绶在西游记中共出现了这些字符绷在西游记中共出现了这些字符绸在西游记中共出现了这些字符绺在西游记中共出现了这些字符综在西游记中共出现了这些字符绽在西游记中共出现了这些字符绾在西游记中共出现了这些字符绿在西游记中共出现了这些字符缀在西游记中共出现了这些字符缁在西游记中共出现了这些字符缃在西游记中共出现了这些字符缄在西游记中共出现了这些字符缆在西游记中共出现了这些字符缈在西游记中共出现了这些字符缉在西游记中共出现了这些字符缎在西游记中共出现了这些字符缓在西游记中共出现了这些字符缕在西游记中共出现了这些字符编在西游记中共出现了这些字符缘在西游记中共出现了这些字符缚在西游记中共出现了这些字符缝在西游记中共出现了这些字符缟在西游记中共出现了这些字符缠在西游记中共出现了这些字符缢在西游记中共出现了这些字符缤在西游记中共出现了这些字符缥在西游记中共出现了这些字符缨在西游记中共出现了这些字符缩在西游记中共出现了这些字符缪在西游记中共出现了这些字符缭在西游记中共出现了这些字符缯在西游记中共出现了这些字符缰在西游记中共出现了这些字符缴在西游记中共出现了这些字符缸在西游记中共出现了这些字符缺在西游记中共出现了这些字符罄在西游记中共出现了这些字符罍在西游记中共出现了这些字符罐在西游记中共出现了这些字符网在西游记中共出现了这些字符罔在西游记中共出现了这些字符罕在西游记中共出现了这些字符罗在西游记中共出现了这些字符罚在西游记中共出现了这些字符罡在西游记中共出现了这些字符罢在西游记中共出现了这些字符罩在西游记中共出现了这些字符罪在西游记中共出现了这些字符置在西游记中共出现了这些字符罴在西游记中共出现了这些字符罾在西游记中共出现了这些字符羁在西游记中共出现了这些字符羊在西游记中共出现了这些字符羌在西游记中共出现了这些字符美在西游记中共出现了这些字符羑在西游记中共出现了这些字符羔在西游记中共出现了这些字符羚在西游记中共出现了这些字符羞在西游记中共出现了这些字符羡在西游记中共出现了这些字符群在西游记中共出现了这些字符羲在西游记中共出现了这些字符羸在西游记中共出现了这些字符羹在西游记中共出现了这些字符羽在西游记中共出现了这些字符羿在西游记中共出现了这些字符翁在西游记中共出现了这些字符翅在西游记中共出现了这些字符翊在西游记中共出现了这些字符翎在西游记中共出现了这些字符翔在西游记中共出现了这些字符翕在西游记中共出现了这些字符翘在西游记中共出现了这些字符翛在西游记中共出现了这些字符翠在西游记中共出现了这些字符翡在西游记中共出现了这些字符翥在西游记中共出现了这些字符翩在西游记中共出现了这些字符翮在西游记中共出现了这些字符翰在西游记中共出现了这些字符翱在西游记中共出现了这些字符翳在西游记中共出现了这些字符翻在西游记中共出现了这些字符翼在西游记中共出现了这些字符耀在西游记中共出现了这些字符老在西游记中共出现了这些字符考在西游记中共出现了这些字符者在西游记中共出现了这些字符而在西游记中共出现了这些字符耍在西游记中共出现了这些字符耐在西游记中共出现了这些字符耕在西游记中共出现了这些字符耗在西游记中共出现了这些字符耘在西游记中共出现了这些字符耙在西游记中共出现了这些字符耨在西游记中共出现了这些字符耳在西游记中共出现了这些字符耶在西游记中共出现了这些字符耸在西游记中共出现了这些字符耻在西游记中共出现了这些字符耽在西游记中共出现了这些字符耿在西游记中共出现了这些字符聆在西游记中共出现了这些字符聊在西游记中共出现了这些字符聋在西游记中共出现了这些字符职在西游记中共出现了这些字符聒在西游记中共出现了这些字符联在西游记中共出现了这些字符聘在西游记中共出现了这些字符聚在西游记中共出现了这些字符聪在西游记中共出现了这些字符肃在西游记中共出现了这些字符肆在西游记中共出现了这些字符肉在西游记中共出现了这些字符肋在西游记中共出现了这些字符肌在西游记中共出现了这些字符肐在西游记中共出现了这些字符肓在西游记中共出现了这些字符肖在西游记中共出现了这些字符肘在西游记中共出现了这些字符肚在西游记中共出现了这些字符肝在西游记中共出现了这些字符肠在西游记中共出现了这些字符股在西游记中共出现了这些字符肢在西游记中共出现了这些字符肤在西游记中共出现了这些字符肥在西游记中共出现了这些字符肩在西游记中共出现了这些字符肯在西游记中共出现了这些字符肱在西游记中共出现了这些字符育在西游记中共出现了这些字符肴在西游记中共出现了这些字符肺在西游记中共出现了这些字符肾在西游记中共出现了这些字符肿在西游记中共出现了这些字符胀在西游记中共出现了这些字符胁在西游记中共出现了这些字符胃在西游记中共出现了这些字符胄在西游记中共出现了这些字符胆在西游记中共出现了这些字符背在西游记中共出现了这些字符胎在西游记中共出现了这些字符胖在西游记中共出现了这些字符胜在西游记中共出现了这些字符胞在西游记中共出现了这些字符胡在西游记中共出现了这些字符胧在西游记中共出现了这些字符胭在西游记中共出现了这些字符胯在西游记中共出现了这些字符胸在西游记中共出现了这些字符能在西游记中共出现了这些字符脂在西游记中共出现了这些字符脆在西游记中共出现了这些字符脉在西游记中共出现了这些字符脊在西游记中共出现了这些字符脏在西游记中共出现了这些字符脐在西游记中共出现了这些字符脑在西游记中共出现了这些字符脓在西游记中共出现了这些字符脚在西游记中共出现了这些字符脯在西游记中共出现了这些字符脱在西游记中共出现了这些字符脸在西游记中共出现了这些字符脾在西游记中共出现了这些字符腆在西游记中共出现了这些字符腊在西游记中共出现了这些字符腋在西游记中共出现了这些字符腌在西游记中共出现了这些字符腐在西游记中共出现了这些字符腑在西游记中共出现了这些字符腔在西游记中共出现了这些字符腕在西游记中共出现了这些字符腥在西游记中共出现了这些字符腭在西游记中共出现了这些字符腮在西游记中共出现了这些字符腰在西游记中共出现了这些字符腹在西游记中共出现了这些字符腻在西游记中共出现了这些字符腼在西游记中共出现了这些字符腾在西游记中共出现了这些字符腿在西游记中共出现了这些字符膀在西游记中共出现了这些字符膂在西游记中共出现了这些字符膊在西游记中共出现了这些字符膏在西游记中共出现了这些字符膘在西游记中共出现了这些字符膛在西游记中共出现了这些字符膜在西游记中共出现了这些字符膝在西游记中共出现了这些字符膨在西游记中共出现了这些字符膭在西游记中共出现了这些字符膳在西游记中共出现了这些字符膻在西游记中共出现了这些字符臀在西游记中共出现了这些字符臁在西游记中共出现了这些字符臂在西游记中共出现了这些字符臊在西游记中共出现了这些字符臣在西游记中共出现了这些字符自在西游记中共出现了这些字符臭在西游记中共出现了这些字符至在西游记中共出现了这些字符致在西游记中共出现了这些字符臻在西游记中共出现了这些字符臼在西游记中共出现了这些字符臾在西游记中共出现了这些字符舀在西游记中共出现了这些字符舂在西游记中共出现了这些字符舅在西游记中共出现了这些字符舆在西游记中共出现了这些字符舌在西游记中共出现了这些字符舍在西游记中共出现了这些字符舒在西游记中共出现了这些字符舔在西游记中共出现了这些字符舜在西游记中共出现了这些字符舞在西游记中共出现了这些字符舟在西游记中共出现了这些字符航在西游记中共出现了这些字符般在西游记中共出现了这些字符舱在西游记中共出现了这些字符舵在西游记中共出现了这些字符船在西游记中共出现了这些字符艇在西游记中共出现了这些字符艎在西游记中共出现了这些字符艮在西游记中共出现了这些字符良在西游记中共出现了这些字符艰在西游记中共出现了这些字符色在西游记中共出现了这些字符艳在西游记中共出现了这些字符艺在西游记中共出现了这些字符艾在西游记中共出现了这些字符节在西游记中共出现了这些字符芊在西游记中共出现了这些字符芋在西游记中共出现了这些字符芍在西游记中共出现了这些字符芒在西游记中共出现了这些字符芙在西游记中共出现了这些字符芜在西游记中共出现了这些字符芝在西游记中共出现了这些字符芤在西游记中共出现了这些字符芥在西游记中共出现了这些字符芦在西游记中共出现了这些字符芫在西游记中共出现了这些字符芬在西游记中共出现了这些字符芭在西游记中共出现了这些字符芰在西游记中共出现了这些字符花在西游记中共出现了这些字符芳在西游记中共出现了这些字符芹在西游记中共出现了这些字符芽在西游记中共出现了这些字符苇在西游记中共出现了这些字符苋在西游记中共出现了这些字符苍在西游记中共出现了这些字符苏在西游记中共出现了这些字符苑在西游记中共出现了这些字符苓在西游记中共出现了这些字符苔在西游记中共出现了这些字符苗在西游记中共出现了这些字符苞在西游记中共出现了这些字符苟在西游记中共出现了这些字符苡在西游记中共出现了这些字符若在西游记中共出现了这些字符苦在西游记中共出现了这些字符苫在西游记中共出现了这些字符英在西游记中共出现了这些字符苹在西游记中共出现了这些字符苾在西游记中共出现了这些字符茂在西游记中共出现了这些字符范在西游记中共出现了这些字符茄在西游记中共出现了这些字符茅在西游记中共出现了这些字符茆在西游记中共出现了这些字符茉在西游记中共出现了这些字符茎在西游记中共出现了这些字符茏在西游记中共出现了这些字符茔在西游记中共出现了这些字符茧在西游记中共出现了这些字符茫在西游记中共出现了这些字符茭在西游记中共出现了这些字符茯在西游记中共出现了这些字符茴在西游记中共出现了这些字符茵在西游记中共出现了这些字符茶在西游记中共出现了这些字符茸在西游记中共出现了这些字符荆在西游记中共出现了这些字符荇在西游记中共出现了这些字符草在西游记中共出现了这些字符荐在西游记中共出现了这些字符荒在西游记中共出现了这些字符荔在西游记中共出现了这些字符荙在西游记中共出现了这些字符荜在西游记中共出现了这些字符荞在西游记中共出现了这些字符荠在西游记中共出现了这些字符荡在西游记中共出现了这些字符荣在西游记中共出现了这些字符荤在西游记中共出现了这些字符荧在西游记中共出现了这些字符荫在西游记中共出现了这些字符荬在西游记中共出现了这些字符药在西游记中共出现了这些字符荷在西游记中共出现了这些字符荻在西游记中共出现了这些字符荼在西游记中共出现了这些字符荽在西游记中共出现了这些字符莉在西游记中共出现了这些字符莎在西游记中共出现了这些字符莙在西游记中共出现了这些字符莫在西游记中共出现了这些字符莱在西游记中共出现了这些字符莲在西游记中共出现了这些字符莴在西游记中共出现了这些字符获在西游记中共出现了这些字符莹在西游记中共出现了这些字符莺在西游记中共出现了这些字符莽在西游记中共出现了这些字符菁在西游记中共出现了这些字符菂在西游记中共出现了这些字符菇在西游记中共出现了这些字符菊在西游记中共出现了这些字符菑在西游记中共出现了这些字符菔在西游记中共出现了这些字符菖在西游记中共出现了这些字符菘在西游记中共出现了这些字符菜在西游记中共出现了这些字符菠在西游记中共出现了这些字符菡在西游记中共出现了这些字符菩在西游记中共出现了这些字符菰在西游记中共出现了这些字符菱在西游记中共出现了这些字符菲在西游记中共出现了这些字符菽在西游记中共出现了这些字符菾在西游记中共出现了这些字符萄在西游记中共出现了这些字符萌在西游记中共出现了这些字符萍在西游记中共出现了这些字符萏在西游记中共出现了这些字符萝在西游记中共出现了这些字符萤在西游记中共出现了这些字符营在西游记中共出现了这些字符萦在西游记中共出现了这些字符萧在西游记中共出现了这些字符萨在西游记中共出现了这些字符萱在西游记中共出现了这些字符萼在西游记中共出现了这些字符落在西游记中共出现了这些字符著在西游记中共出现了这些字符葛在西游记中共出现了这些字符葡在西游记中共出现了这些字符董在西游记中共出现了这些字符葩在西游记中共出现了这些字符葫在西游记中共出现了这些字符葬在西游记中共出现了这些字符葭在西游记中共出现了这些字符葱在西游记中共出现了这些字符葵在西游记中共出现了这些字符蒂在西游记中共出现了这些字符蒙在西游记中共出现了这些字符蒜在西游记中共出现了这些字符蒭在西游记中共出现了这些字符蒯在西游记中共出现了这些字符蒲在西游记中共出现了这些字符蒸在西游记中共出现了这些字符蒹在西游记中共出现了这些字符蒺在西游记中共出现了这些字符蒿在西游记中共出现了这些字符蓁在西游记中共出现了这些字符蓄在西游记中共出现了这些字符蓉在西游记中共出现了这些字符蓍在西游记中共出现了这些字符蓏在西游记中共出现了这些字符蓑在西游记中共出现了这些字符蓝在西游记中共出现了这些字符蓦在西游记中共出现了这些字符蓬在西游记中共出现了这些字符蓼在西游记中共出现了这些字符蔑在西游记中共出现了这些字符蔓在西游记中共出现了这些字符蔗在西游记中共出现了这些字符蔬在西游记中共出现了这些字符蔷在西游记中共出现了这些字符蔼在西游记中共出现了这些字符蔽在西游记中共出现了这些字符蕃在西游记中共出现了这些字符蕈在西游记中共出现了这些字符蕉在西游记中共出现了这些字符蕊在西游记中共出现了这些字符蕖在西游记中共出现了这些字符蕙在西游记中共出现了这些字符蕨在西游记中共出现了这些字符蕴在西游记中共出现了这些字符薄在西游记中共出现了这些字符薅在西游记中共出现了这些字符薇在西游记中共出现了这些字符薏在西游记中共出现了这些字符薛在西游记中共出现了这些字符薜在西游记中共出现了这些字符薤在西游记中共出现了这些字符薪在西游记中共出现了这些字符薯在西游记中共出现了这些字符薰在西游记中共出现了这些字符藏在西游记中共出现了这些字符藐在西游记中共出现了这些字符藓在西游记中共出现了这些字符藕在西游记中共出现了这些字符藜在西游记中共出现了这些字符藤在西游记中共出现了这些字符藩在西游记中共出现了这些字符藻在西游记中共出现了这些字符藿在西游记中共出现了这些字符蘋在西游记中共出现了这些字符蘑在西游记中共出现了这些字符蘛在西游记中共出现了这些字符蘩在西游记中共出现了这些字符蘸在西游记中共出现了这些字符蘼在西游记中共出现了这些字符虀在西游记中共出现了这些字符虎在西游记中共出现了这些字符虏在西游记中共出现了这些字符虐在西游记中共出现了这些字符虑在西游记中共出现了这些字符虔在西游记中共出现了这些字符虚在西游记中共出现了这些字符虞在西游记中共出现了这些字符虫在西游记中共出现了这些字符虬在西游记中共出现了这些字符虱在西游记中共出现了这些字符虹在西游记中共出现了这些字符虼在西游记中共出现了这些字符虽在西游记中共出现了这些字符虾在西游记中共出现了这些字符蚁在西游记中共出现了这些字符蚂在西游记中共出现了这些字符蚊在西游记中共出现了这些字符蚌在西游记中共出现了这些字符蚓在西游记中共出现了这些字符蚕在西游记中共出现了这些字符蚣在西游记中共出现了这些字符蚤在西游记中共出现了这些字符蚯在西游记中共出现了这些字符蛀在西游记中共出现了这些字符蛆在西游记中共出现了这些字符蛇在西游记中共出现了这些字符蛋在西游记中共出现了这些字符蛎在西游记中共出现了这些字符蛏在西游记中共出现了这些字符蛙在西游记中共出现了这些字符蛛在西游记中共出现了这些字符蛟在西游记中共出现了这些字符蛤在西游记中共出现了这些字符蛩在西游记中共出现了这些字符蛭在西游记中共出现了这些字符蛮在西游记中共出现了这些字符蛰在西游记中共出现了这些字符蛱在西游记中共出现了这些字符蛾在西游记中共出现了这些字符蜀在西游记中共出现了这些字符蜂在西游记中共出现了这些字符蜃在西游记中共出现了这些字符蜇在西游记中共出现了这些字符蜈在西游记中共出现了这些字符蜋在西游记中共出现了这些字符蜍在西游记中共出现了这些字符蜓在西游记中共出现了这些字符蜗在西游记中共出现了这些字符蜘在西游记中共出现了这些字符蜚在西游记中共出现了这些字符蜜在西游记中共出现了这些字符蜡在西游记中共出现了这些字符蜢在西游记中共出现了这些字符蜷在西游记中共出现了这些字符蜻在西游记中共出现了这些字符蜾在西游记中共出现了这些字符蝇在西游记中共出现了这些字符蝉在西游记中共出现了这些字符蝎在西游记中共出现了这些字符蝙在西游记中共出现了这些字符蝠在西游记中共出现了这些字符蝴在西游记中共出现了这些字符蝶在西游记中共出现了这些字符蝼在西游记中共出现了这些字符螃在西游记中共出现了这些字符融在西游记中共出现了这些字符螭在西游记中共出现了这些字符螺在西游记中共出现了这些字符蟆在西游记中共出现了这些字符蟋在西游记中共出现了这些字符蟒在西游记中共出现了这些字符蟟在西游记中共出现了这些字符蟠在西游记中共出现了这些字符蟭在西游记中共出现了这些字符蟮在西游记中共出现了这些字符蟹在西游记中共出现了这些字符蟾在西游记中共出现了这些字符蠃在西游记中共出现了这些字符蠙在西游记中共出现了这些字符蠢在西游记中共出现了这些字符蠲在西游记中共出现了这些字符血在西游记中共出现了这些字符行在西游记中共出现了这些字符衍在西游记中共出现了这些字符衔在西游记中共出现了这些字符衕在西游记中共出现了这些字符街在西游记中共出现了这些字符衙在西游记中共出现了这些字符衠在西游记中共出现了这些字符衡在西游记中共出现了这些字符衢在西游记中共出现了这些字符衣在西游记中共出现了这些字符补在西游记中共出现了这些字符表在西游记中共出现了这些字符衫在西游记中共出现了这些字符衬在西游记中共出现了这些字符衰在西游记中共出现了这些字符衲在西游记中共出现了这些字符衷在西游记中共出现了这些字符衽在西游记中共出现了这些字符衾在西游记中共出现了这些字符袁在西游记中共出现了这些字符袂在西游记中共出现了这些字符袄在西游记中共出现了这些字符袅在西游记中共出现了这些字符袈在西游记中共出现了这些字符袋在西游记中共出现了这些字符袍在西游记中共出现了这些字符袒在西游记中共出现了这些字符袖在西游记中共出现了这些字符袛在西游记中共出现了这些字符袜在西游记中共出现了这些字符袢在西游记中共出现了这些字符被在西游记中共出现了这些字符袭在西游记中共出现了这些字符袱在西游记中共出现了这些字符裀在西游记中共出现了这些字符裁在西游记中共出现了这些字符裂在西游记中共出现了这些字符装在西游记中共出现了这些字符裆在西游记中共出现了这些字符裔在西游记中共出现了这些字符裘在西游记中共出现了这些字符裙在西游记中共出现了这些字符裟在西游记中共出现了这些字符裤在西游记中共出现了这些字符裩在西游记中共出现了这些字符裰在西游记中共出现了这些字符裳在西游记中共出现了这些字符裸在西游记中共出现了这些字符裹在西游记中共出现了这些字符裾在西游记中共出现了这些字符褊在西游记中共出现了这些字符褐在西游记中共出现了这些字符褒在西游记中共出现了这些字符褛在西游记中共出现了这些字符褡在西游记中共出现了这些字符褥在西游记中共出现了这些字符褪在西游记中共出现了这些字符褭在西游记中共出现了这些字符褴在西游记中共出现了这些字符褶在西游记中共出现了这些字符襕在西游记中共出现了这些字符襟在西游记中共出现了这些字符西在西游记中共出现了这些字符要在西游记中共出现了这些字符覆在西游记中共出现了这些字符见在西游记中共出现了这些字符观在西游记中共出现了这些字符规在西游记中共出现了这些字符觅在西游记中共出现了这些字符视在西游记中共出现了这些字符览在西游记中共出现了这些字符觉在西游记中共出现了这些字符觌在西游记中共出现了这些字符觑在西游记中共出现了这些字符角在西游记中共出现了这些字符觔在西游记中共出现了这些字符觜在西游记中共出现了这些字符觞在西游记中共出现了这些字符解在西游记中共出现了这些字符觥在西游记中共出现了这些字符触在西游记中共出现了这些字符言在西游记中共出现了这些字符詈在西游记中共出现了这些字符誉在西游记中共出现了这些字符誊在西游记中共出现了这些字符誓在西游记中共出现了这些字符警在西游记中共出现了这些字符譬在西游记中共出现了这些字符计在西游记中共出现了这些字符订在西游记中共出现了这些字符认在西游记中共出现了这些字符讨在西游记中共出现了这些字符让在西游记中共出现了这些字符讪在西游记中共出现了这些字符讫在西游记中共出现了这些字符训在西游记中共出现了这些字符议在西游记中共出现了这些字符讯在西游记中共出现了这些字符记在西游记中共出现了这些字符讲在西游记中共出现了这些字符讳在西游记中共出现了这些字符讴在西游记中共出现了这些字符讵在西游记中共出现了这些字符讶在西游记中共出现了这些字符许在西游记中共出现了这些字符讹在西游记中共出现了这些字符论在西游记中共出现了这些字符讼在西游记中共出现了这些字符讽在西游记中共出现了这些字符设在西游记中共出现了这些字符访在西游记中共出现了这些字符诀在西游记中共出现了这些字符证在西游记中共出现了这些字符诂在西游记中共出现了这些字符诃在西游记中共出现了这些字符评在西游记中共出现了这些字符识在西游记中共出现了这些字符诈在西游记中共出现了这些字符诉在西游记中共出现了这些字符诊在西游记中共出现了这些字符词在西游记中共出现了这些字符诏在西游记中共出现了这些字符译在西游记中共出现了这些字符诓在西游记中共出现了这些字符试在西游记中共出现了这些字符诗在西游记中共出现了这些字符诘在西游记中共出现了这些字符诚在西游记中共出现了这些字符诛在西游记中共出现了这些字符话在西游记中共出现了这些字符诞在西游记中共出现了这些字符诡在西游记中共出现了这些字符询在西游记中共出现了这些字符诣在西游记中共出现了这些字符该在西游记中共出现了这些字符详在西游记中共出现了这些字符诨在西游记中共出现了这些字符诬在西游记中共出现了这些字符语在西游记中共出现了这些字符误在西游记中共出现了这些字符诰在西游记中共出现了这些字符诱在西游记中共出现了这些字符诲在西游记中共出现了这些字符诳在西游记中共出现了这些字符说在西游记中共出现了这些字符诵在西游记中共出现了这些字符请在西游记中共出现了这些字符诸在西游记中共出现了这些字符诺在西游记中共出现了这些字符读在西游记中共出现了这些字符诽在西游记中共出现了这些字符课在西游记中共出现了这些字符谁在西游记中共出现了这些字符调在西游记中共出现了这些字符谄在西游记中共出现了这些字符谅在西游记中共出现了这些字符谆在西游记中共出现了这些字符谈在西游记中共出现了这些字符谊在西游记中共出现了这些字符谋在西游记中共出现了这些字符谎在西游记中共出现了这些字符谏在西游记中共出现了这些字符谐在西游记中共出现了这些字符谒在西游记中共出现了这些字符谓在西游记中共出现了这些字符谕在西游记中共出现了这些字符谗在西游记中共出现了这些字符谙在西游记中共出现了这些字符谛在西游记中共出现了这些字符谜在西游记中共出现了这些字符谢在西游记中共出现了这些字符谣在西游记中共出现了这些字符谤在西游记中共出现了这些字符谦在西游记中共出现了这些字符谨在西游记中共出现了这些字符谩在西游记中共出现了这些字符谪在西游记中共出现了这些字符谬在西游记中共出现了这些字符谯在西游记中共出现了这些字符谱在西游记中共出现了这些字符谲在西游记中共出现了这些字符谴在西游记中共出现了这些字符谵在西游记中共出现了这些字符谶在西游记中共出现了这些字符谷在西游记中共出现了这些字符豁在西游记中共出现了这些字符豆在西游记中共出现了这些字符豇在西游记中共出现了这些字符豕在西游记中共出现了这些字符豚在西游记中共出现了这些字符豝在西游记中共出现了这些字符象在西游记中共出现了这些字符豪在西游记中共出现了这些字符豸在西游记中共出现了这些字符豹在西游记中共出现了这些字符豺在西游记中共出现了这些字符貂在西游记中共出现了这些字符貅在西游记中共出现了这些字符貉在西游记中共出现了这些字符貌在西游记中共出现了这些字符貔在西游记中共出现了这些字符贝在西游记中共出现了这些字符贞在西游记中共出现了这些字符负在西游记中共出现了这些字符贡在西游记中共出现了这些字符财在西游记中共出现了这些字符责在西游记中共出现了这些字符贤在西游记中共出现了这些字符败在西游记中共出现了这些字符货在西游记中共出现了这些字符质在西游记中共出现了这些字符贩在西游记中共出现了这些字符贪在西游记中共出现了这些字符贫在西游记中共出现了这些字符贬在西游记中共出现了这些字符贮在西游记中共出现了这些字符贯在西游记中共出现了这些字符贰在西游记中共出现了这些字符贱在西游记中共出现了这些字符贴在西游记中共出现了这些字符贵在西游记中共出现了这些字符费在西游记中共出现了这些字符贺在西游记中共出现了这些字符贻在西游记中共出现了这些字符贼在西游记中共出现了这些字符贽在西游记中共出现了这些字符贾在西游记中共出现了这些字符贿在西游记中共出现了这些字符赁在西游记中共出现了这些字符赃在西游记中共出现了这些字符资在西游记中共出现了这些字符赆在西游记中共出现了这些字符赈在西游记中共出现了这些字符赊在西游记中共出现了这些字符赋在西游记中共出现了这些字符赌在西游记中共出现了这些字符赍在西游记中共出现了这些字符赎在西游记中共出现了这些字符赏在西游记中共出现了这些字符赐在西游记中共出现了这些字符赑在西游记中共出现了这些字符赓在西游记中共出现了这些字符赔在西游记中共出现了这些字符赖在西游记中共出现了这些字符赘在西游记中共出现了这些字符赚在西游记中共出现了这些字符赛在西游记中共出现了这些字符赜在西游记中共出现了这些字符赞在西游记中共出现了这些字符赠在西游记中共出现了这些字符赡在西游记中共出现了这些字符赢在西游记中共出现了这些字符赣在西游记中共出现了这些字符赤在西游记中共出现了这些字符赥在西游记中共出现了这些字符赦在西游记中共出现了这些字符赫在西游记中共出现了这些字符赭在西游记中共出现了这些字符走在西游记中共出现了这些字符赴在西游记中共出现了这些字符赵在西游记中共出现了这些字符赶在西游记中共出现了这些字符起在西游记中共出现了这些字符趁在西游记中共出现了这些字符趄在西游记中共出现了这些字符超在西游记中共出现了这些字符越在西游记中共出现了这些字符趋在西游记中共出现了这些字符趟在西游记中共出现了这些字符趣在西游记中共出现了这些字符趫在西游记中共出现了这些字符趱在西游记中共出现了这些字符足在西游记中共出现了这些字符趷在西游记中共出现了这些字符趾在西游记中共出现了这些字符跃在西游记中共出现了这些字符跄在西游记中共出现了这些字符跋在西游记中共出现了这些字符跌在西游记中共出现了这些字符跎在西游记中共出现了这些字符跑在西游记中共出现了这些字符跘在西游记中共出现了这些字符距在西游记中共出现了这些字符跟在西游记中共出现了这些字符跣在西游记中共出现了这些字符跤在西游记中共出现了这些字符跨在西游记中共出现了这些字符跪在西游记中共出现了这些字符跬在西游记中共出现了这些字符路在西游记中共出现了这些字符跳在西游记中共出现了这些字符践在西游记中共出现了这些字符跷在西游记中共出现了这些字符跼在西游记中共出现了这些字符踉在西游记中共出现了这些字符踊在西游记中共出现了这些字符踌在西游记中共出现了这些字符踏在西游记中共出现了这些字符踘在西游记中共出现了这些字符踞在西游记中共出现了这些字符踡在西游记中共出现了这些字符踢在西游记中共出现了这些字符踪在西游记中共出现了这些字符踵在西游记中共出现了这些字符蹄在西游记中共出现了这些字符蹅在西游记中共出现了这些字符蹈在西游记中共出现了这些字符蹉在西游记中共出现了这些字符蹊在西游记中共出现了这些字符蹋在西游记中共出现了这些字符蹍在西游记中共出现了这些字符蹑在西游记中共出现了这些字符蹙在西游记中共出现了这些字符蹡在西游记中共出现了这些字符蹬在西游记中共出现了这些字符蹭在西游记中共出现了这些字符蹱在西游记中共出现了这些字符蹲在西游记中共出现了这些字符蹴在西游记中共出现了这些字符蹶在西游记中共出现了这些字符蹻在西游记中共出现了这些字符蹼在西游记中共出现了这些字符躁在西游记中共出现了这些字符躇在西游记中共出现了这些字符躘在西游记中共出现了这些字符躧在西游记中共出现了这些字符身在西游记中共出现了这些字符躬在西游记中共出现了这些字符躯在西游记中共出现了这些字符躲在西游记中共出现了这些字符軃在西游记中共出现了这些字符车在西游记中共出现了这些字符轧在西游记中共出现了这些字符轩在西游记中共出现了这些字符转在西游记中共出现了这些字符轮在西游记中共出现了这些字符软在西游记中共出现了这些字符轰在西游记中共出现了这些字符轳在西游记中共出现了这些字符轴在西游记中共出现了这些字符轸在西游记中共出现了这些字符轻在西游记中共出现了这些字符载在西游记中共出现了这些字符轿在西游记中共出现了这些字符辂在西游记中共出现了这些字符较在西游记中共出现了这些字符辄在西游记中共出现了这些字符辅在西游记中共出现了这些字符辆在西游记中共出现了这些字符辇在西游记中共出现了这些字符辈在西游记中共出现了这些字符辉在西游记中共出现了这些字符辋在西游记中共出现了这些字符辍在西游记中共出现了这些字符辏在西游记中共出现了这些字符辐在西游记中共出现了这些字符输在西游记中共出现了这些字符辔在西游记中共出现了这些字符辕在西游记中共出现了这些字符辖在西游记中共出现了这些字符辘在西游记中共出现了这些字符辛在西游记中共出现了这些字符辜在西游记中共出现了这些字符辞在西游记中共出现了这些字符辟在西游记中共出现了这些字符辣在西游记中共出现了这些字符辨在西游记中共出现了这些字符辩在西游记中共出现了这些字符辰在西游记中共出现了这些字符辱在西游记中共出现了这些字符边在西游记中共出现了这些字符达在西游记中共出现了这些字符辿在西游记中共出现了这些字符迁在西游记中共出现了这些字符迅在西游记中共出现了这些字符过在西游记中共出现了这些字符迈在西游记中共出现了这些字符迍在西游记中共出现了这些字符迎在西游记中共出现了这些字符运在西游记中共出现了这些字符近在西游记中共出现了这些字符迓在西游记中共出现了这些字符返在西游记中共出现了这些字符还在西游记中共出现了这些字符这在西游记中共出现了这些字符进在西游记中共出现了这些字符远在西游记中共出现了这些字符违在西游记中共出现了这些字符连在西游记中共出现了这些字符迟在西游记中共出现了这些字符迢在西游记中共出现了这些字符迤在西游记中共出现了这些字符迥在西游记中共出现了这些字符迦在西游记中共出现了这些字符迩在西游记中共出现了这些字符迫在西游记中共出现了这些字符迭在西游记中共出现了这些字符述在西游记中共出现了这些字符迳在西游记中共出现了这些字符迷在西游记中共出现了这些字符迸在西游记中共出现了这些字符迹在西游记中共出现了这些字符追在西游记中共出现了这些字符退在西游记中共出现了这些字符送在西游记中共出现了这些字符适在西游记中共出现了这些字符逃在西游记中共出现了这些字符逅在西游记中共出现了这些字符逆在西游记中共出现了这些字符选在西游记中共出现了这些字符逊在西游记中共出现了这些字符逍在西游记中共出现了这些字符透在西游记中共出现了这些字符逐在西游记中共出现了这些字符递在西游记中共出现了这些字符途在西游记中共出现了这些字符逗在西游记中共出现了这些字符通在西游记中共出现了这些字符逝在西游记中共出现了这些字符逞在西游记中共出现了这些字符速在西游记中共出现了这些字符造在西游记中共出现了这些字符逢在西游记中共出现了这些字符逭在西游记中共出现了这些字符逶在西游记中共出现了这些字符逸在西游记中共出现了这些字符逻在西游记中共出现了这些字符逼在西游记中共出现了这些字符逾在西游记中共出现了这些字符遁在西游记中共出现了这些字符遂在西游记中共出现了这些字符遇在西游记中共出现了这些字符遍在西游记中共出现了这些字符遏在西游记中共出现了这些字符遐在西游记中共出现了这些字符道在西游记中共出现了这些字符遗在西游记中共出现了这些字符遣在西游记中共出现了这些字符遥在西游记中共出现了这些字符遨在西游记中共出现了这些字符遭在西游记中共出现了这些字符遮在西游记中共出现了这些字符遵在西游记中共出现了这些字符遽在西游记中共出现了这些字符避在西游记中共出现了这些字符邀在西游记中共出现了这些字符邂在西游记中共出现了这些字符邃在西游记中共出现了这些字符邅在西游记中共出现了这些字符邑在西游记中共出现了这些字符邓在西游记中共出现了这些字符那在西游记中共出现了这些字符邦在西游记中共出现了这些字符邪在西游记中共出现了这些字符邱在西游记中共出现了这些字符邵在西游记中共出现了这些字符邷在西游记中共出现了这些字符邸在西游记中共出现了这些字符邻在西游记中共出现了这些字符郁在西游记中共出现了这些字符郊在西游记中共出现了这些字符郎在西游记中共出现了这些字符郑在西游记中共出现了这些字符郡在西游记中共出现了这些字符部在西游记中共出现了这些字符郭在西游记中共出现了这些字符郸在西游记中共出现了这些字符都在西游记中共出现了这些字符鄂在西游记中共出现了这些字符鄙在西游记中共出现了这些字符鄱在西游记中共出现了这些字符酆在西游记中共出现了这些字符酉在西游记中共出现了这些字符酊在西游记中共出现了这些字符酌在西游记中共出现了这些字符配在西游记中共出现了这些字符酒在西游记中共出现了这些字符酕在西游记中共出现了这些字符酗在西游记中共出现了这些字符酝在西游记中共出现了这些字符酡在西游记中共出现了这些字符酣在西游记中共出现了这些字符酥在西游记中共出现了这些字符酩在西游记中共出现了这些字符酪在西游记中共出现了这些字符酬在西游记中共出现了这些字符酱在西游记中共出现了这些字符酲在西游记中共出现了这些字符酷在西游记中共出现了这些字符酸在西游记中共出现了这些字符酾在西游记中共出现了这些字符酿在西游记中共出现了这些字符醄在西游记中共出现了这些字符醉在西游记中共出现了这些字符醋在西游记中共出现了这些字符醍在西游记中共出现了这些字符醐在西游记中共出现了这些字符醒在西游记中共出现了这些字符醪在西游记中共出现了这些字符醮在西游记中共出现了这些字符醴在西游记中共出现了这些字符醺在西游记中共出现了这些字符采在西游记中共出现了这些字符释在西游记中共出现了这些字符里在西游记中共出现了这些字符重在西游记中共出现了这些字符野在西游记中共出现了这些字符量在西游记中共出现了这些字符金在西游记中共出现了这些字符鉴在西游记中共出现了这些字符銮在西游记中共出现了这些字符鋘在西游记中共出现了这些字符鍪在西游记中共出现了这些字符鏖在西游记中共出现了这些字符鐄在西游记中共出现了这些字符鐏在西游记中共出现了这些字符鑨在西游记中共出现了这些字符针在西游记中共出现了这些字符钉在西游记中共出现了这些字符钏在西游记中共出现了这些字符钓在西游记中共出现了这些字符钗在西游记中共出现了这些字符钝在西游记中共出现了这些字符钞在西游记中共出现了这些字符钟在西游记中共出现了这些字符钢在西游记中共出现了这些字符钤在西游记中共出现了这些字符钥在西游记中共出现了这些字符钦在西游记中共出现了这些字符钧在西游记中共出现了这些字符钩在西游记中共出现了这些字符钮在西游记中共出现了这些字符钯在西游记中共出现了这些字符钱在西游记中共出现了这些字符钳在西游记中共出现了这些字符钵在西游记中共出现了这些字符钹在西游记中共出现了这些字符钺在西游记中共出现了这些字符钻在西游记中共出现了这些字符钿在西游记中共出现了这些字符铁在西游记中共出现了这些字符铃在西游记中共出现了这些字符铄在西游记中共出现了这些字符铅在西游记中共出现了这些字符铇在西游记中共出现了这些字符铊在西游记中共出现了这些字符铎在西游记中共出现了这些字符铙在西游记中共出现了这些字符铛在西游记中共出现了这些字符铜在西游记中共出现了这些字符铠在西游记中共出现了这些字符铣在西游记中共出现了这些字符铩在西游记中共出现了这些字符铭在西游记中共出现了这些字符铲在西游记中共出现了这些字符铳在西游记中共出现了这些字符银在西游记中共出现了这些字符铸在西游记中共出现了这些字符铺在西游记中共出现了这些字符链在西游记中共出现了这些字符铿在西游记中共出现了这些字符销在西游记中共出现了这些字符锁在西游记中共出现了这些字符锄在西游记中共出现了这些字符锅在西游记中共出现了这些字符锈在西游记中共出现了这些字符锉在西游记中共出现了这些字符锋在西游记中共出现了这些字符锐在西游记中共出现了这些字符错在西游记中共出现了这些字符锚在西游记中共出现了这些字符锟在西游记中共出现了这些字符锡在西游记中共出现了这些字符锢在西游记中共出现了这些字符锣在西游记中共出现了这些字符锤在西游记中共出现了这些字符锥在西游记中共出现了这些字符锦在西游记中共出现了这些字符锭在西游记中共出现了这些字符键在西游记中共出现了这些字符锯在西游记中共出现了这些字符锺在西游记中共出现了这些字符锻在西游记中共出现了这些字符镂在西游记中共出现了这些字符镇在西游记中共出现了这些字符镌在西游记中共出现了这些字符镔在西游记中共出现了这些字符镕在西游记中共出现了这些字符镜在西游记中共出现了这些字符镟在西游记中共出现了这些字符镫在西游记中共出现了这些字符镯在西游记中共出现了这些字符镰在西游记中共出现了这些字符镵在西游记中共出现了这些字符镶在西游记中共出现了这些字符长在西游记中共出现了这些字符门在西游记中共出现了这些字符闪在西游记中共出现了这些字符闭在西游记中共出现了这些字符问在西游记中共出现了这些字符闯在西游记中共出现了这些字符闰在西游记中共出现了这些字符闱在西游记中共出现了这些字符闲在西游记中共出现了这些字符间在西游记中共出现了这些字符闷在西游记中共出现了这些字符闸在西游记中共出现了这些字符闹在西游记中共出现了这些字符闺在西游记中共出现了这些字符闻在西游记中共出现了这些字符闽在西游记中共出现了这些字符闾在西游记中共出现了这些字符阁在西游记中共出现了这些字符阃在西游记中共出现了这些字符阅在西游记中共出现了这些字符阆在西游记中共出现了这些字符阇在西游记中共出现了这些字符阊在西游记中共出现了这些字符阎在西游记中共出现了这些字符阐在西游记中共出现了这些字符阑在西游记中共出现了这些字符阒在西游记中共出现了这些字符阔在西游记中共出现了这些字符阕在西游记中共出现了这些字符阖在西游记中共出现了这些字符阙在西游记中共出现了这些字符阜在西游记中共出现了这些字符队在西游记中共出现了这些字符阡在西游记中共出现了这些字符阮在西游记中共出现了这些字符防在西游记中共出现了这些字符阳在西游记中共出现了这些字符阴在西游记中共出现了这些字符阵在西游记中共出现了这些字符阶在西游记中共出现了这些字符阻在西游记中共出现了这些字符阿在西游记中共出现了这些字符陀在西游记中共出现了这些字符附在西游记中共出现了这些字符际在西游记中共出现了这些字符陆在西游记中共出现了这些字符陈在西游记中共出现了这些字符陋在西游记中共出现了这些字符陌在西游记中共出现了这些字符降在西游记中共出现了这些字符限在西游记中共出现了这些字符陕在西游记中共出现了这些字符陛在西游记中共出现了这些字符陡在西游记中共出现了这些字符院在西游记中共出现了这些字符除在西游记中共出现了这些字符险在西游记中共出现了这些字符陪在西游记中共出现了这些字符陲在西游记中共出现了这些字符陵在西游记中共出现了这些字符陶在西游记中共出现了这些字符陷在西游记中共出现了这些字符隅在西游记中共出现了这些字符隆在西游记中共出现了这些字符隋在西游记中共出现了这些字符隍在西游记中共出现了这些字符随在西游记中共出现了这些字符隐在西游记中共出现了这些字符隔在西游记中共出现了这些字符隘在西游记中共出现了这些字符隙在西游记中共出现了这些字符障在西游记中共出现了这些字符隶在西游记中共出现了这些字符难在西游记中共出现了这些字符雀在西游记中共出现了这些字符雁在西游记中共出现了这些字符雄在西游记中共出现了这些字符雅在西游记中共出现了这些字符集在西游记中共出现了这些字符雇在西游记中共出现了这些字符雉在西游记中共出现了这些字符雌在西游记中共出现了这些字符雍在西游记中共出现了这些字符雏在西游记中共出现了这些字符雒在西游记中共出现了这些字符雕在西游记中共出现了这些字符雨在西游记中共出现了这些字符雪在西游记中共出现了这些字符雳在西游记中共出现了这些字符零在西游记中共出现了这些字符雷在西游记中共出现了这些字符雹在西游记中共出现了这些字符雾在西游记中共出现了这些字符需在西游记中共出现了这些字符霁在西游记中共出现了这些字符霄在西游记中共出现了这些字符霆在西游记中共出现了这些字符震在西游记中共出现了这些字符霉在西游记中共出现了这些字符霍在西游记中共出现了这些字符霎在西游记中共出现了这些字符霏在西游记中共出现了这些字符霓在西游记中共出现了这些字符霖在西游记中共出现了这些字符霜在西游记中共出现了这些字符霞在西游记中共出现了这些字符霭在西游记中共出现了这些字符露在西游记中共出现了这些字符霸在西游记中共出现了这些字符霹在西游记中共出现了这些字符霾在西游记中共出现了这些字符青在西游记中共出现了这些字符靖在西游记中共出现了这些字符静在西游记中共出现了这些字符靛在西游记中共出现了这些字符非在西游记中共出现了这些字符靠在西游记中共出现了这些字符靡在西游记中共出现了这些字符面在西游记中共出现了这些字符靦在西游记中共出现了这些字符靴在西游记中共出现了这些字符靸在西游记中共出现了这些字符靼在西游记中共出现了这些字符靿在西游记中共出现了这些字符鞄在西游记中共出现了这些字符鞋在西游记中共出现了这些字符鞍在西游记中共出现了这些字符鞑在西游记中共出现了这些字符鞒在西游记中共出现了这些字符鞘在西游记中共出现了这些字符鞠在西游记中共出现了这些字符鞦在西游记中共出现了这些字符鞭在西游记中共出现了这些字符韂在西游记中共出现了这些字符韩在西游记中共出现了这些字符韬在西游记中共出现了这些字符韭在西游记中共出现了这些字符音在西游记中共出现了这些字符韵在西游记中共出现了这些字符韶在西游记中共出现了这些字符顶在西游记中共出现了这些字符顷在西游记中共出现了这些字符项在西游记中共出现了这些字符顺在西游记中共出现了这些字符须在西游记中共出现了这些字符顽在西游记中共出现了这些字符顾在西游记中共出现了这些字符顿在西游记中共出现了这些字符颁在西游记中共出现了这些字符颂在西游记中共出现了这些字符预在西游记中共出现了这些字符颅在西游记中共出现了这些字符领在西游记中共出现了这些字符颇在西游记中共出现了这些字符颈在西游记中共出现了这些字符颉在西游记中共出现了这些字符颏在西游记中共出现了这些字符颐在西游记中共出现了这些字符频在西游记中共出现了这些字符颓在西游记中共出现了这些字符颔在西游记中共出现了这些字符颖在西游记中共出现了这些字符颗在西游记中共出现了这些字符题在西游记中共出现了这些字符颜在西游记中共出现了这些字符额在西游记中共出现了这些字符颠在西游记中共出现了这些字符颤在西游记中共出现了这些字符颧在西游记中共出现了这些字符风在西游记中共出现了这些字符飒在西游记中共出现了这些字符飕在西游记中共出现了这些字符飖在西游记中共出现了这些字符飘在西游记中共出现了这些字符飞在西游记中共出现了这些字符食在西游记中共出现了这些字符餂在西游记中共出现了这些字符餐在西游记中共出现了这些字符餪在西游记中共出现了这些字符饥在西游记中共出现了这些字符饧在西游记中共出现了这些字符饫在西游记中共出现了这些字符饭在西游记中共出现了这些字符饮在西游记中共出现了这些字符饯在西游记中共出现了这些字符饰在西游记中共出现了这些字符饱在西游记中共出现了这些字符饲在西游记中共出现了这些字符饳在西游记中共出现了这些字符饵在西游记中共出现了这些字符饶在西游记中共出现了这些字符饷在西游记中共出现了这些字符饼在西游记中共出现了这些字符饿在西游记中共出现了这些字符馀在西游记中共出现了这些字符馁在西游记中共出现了这些字符馅在西游记中共出现了这些字符馆在西游记中共出现了这些字符馉在西游记中共出现了这些字符馋在西游记中共出现了这些字符馍在西游记中共出现了这些字符馐在西游记中共出现了这些字符馑在西游记中共出现了这些字符馒在西游记中共出现了这些字符馔在西游记中共出现了这些字符馕在西游记中共出现了这些字符首在西游记中共出现了这些字符香在西游记中共出现了这些字符馥在西游记中共出现了这些字符馨在西游记中共出现了这些字符駃在西游记中共出现了这些字符駔在西游记中共出现了这些字符駬在西游记中共出现了这些字符駼在西游记中共出现了这些字符騂在西游记中共出现了这些字符騄在西游记中共出现了这些字符騊在西游记中共出现了这些字符騔在西游记中共出现了这些字符騕在西游记中共出现了这些字符騠在西游记中共出现了这些字符马在西游记中共出现了这些字符驮在西游记中共出现了这些字符驯在西游记中共出现了这些字符驰在西游记中共出现了这些字符驱在西游记中共出现了这些字符驴在西游记中共出现了这些字符驷在西游记中共出现了这些字符驸在西游记中共出现了这些字符驹在西游记中共出现了这些字符驻在西游记中共出现了这些字符驼在西游记中共出现了这些字符驽在西游记中共出现了这些字符驾在西游记中共出现了这些字符驿在西游记中共出现了这些字符骁在西游记中共出现了这些字符骂在西游记中共出现了这些字符骄在西游记中共出现了这些字符骅在西游记中共出现了这些字符骆在西游记中共出现了这些字符骇在西游记中共出现了这些字符骈在西游记中共出现了这些字符骊在西游记中共出现了这些字符骋在西游记中共出现了这些字符验在西游记中共出现了这些字符骏在西游记中共出现了这些字符骐在西游记中共出现了这些字符骑在西游记中共出现了这些字符骕在西游记中共出现了这些字符骗在西游记中共出现了这些字符骘在西游记中共出现了这些字符骝在西游记中共出现了这些字符骞在西游记中共出现了这些字符骠在西游记中共出现了这些字符骡在西游记中共出现了这些字符骢在西游记中共出现了这些字符骤在西游记中共出现了这些字符骥在西游记中共出现了这些字符骦在西游记中共出现了这些字符骨在西游记中共出现了这些字符骷在西游记中共出现了这些字符骸在西游记中共出现了这些字符髅在西游记中共出现了这些字符髓在西游记中共出现了这些字符高在西游记中共出现了这些字符髭在西游记中共出现了这些字符髯在西游记中共出现了这些字符髻在西游记中共出现了这些字符髽在西游记中共出现了这些字符鬃在西游记中共出现了这些字符鬅在西游记中共出现了这些字符鬏在西游记中共出现了这些字符鬓在西游记中共出现了这些字符鬘在西游记中共出现了这些字符鬟在西游记中共出现了这些字符鬣在西游记中共出现了这些字符鬼在西游记中共出现了这些字符魀在西游记中共出现了这些字符魁在西游记中共出现了这些字符魂在西游记中共出现了这些字符魄在西游记中共出现了这些字符魅在西游记中共出现了这些字符魇在西游记中共出现了这些字符魈在西游记中共出现了这些字符魉在西游记中共出现了这些字符魍在西游记中共出现了这些字符魏在西游记中共出现了这些字符魑在西游记中共出现了这些字符魔在西游记中共出现了这些字符鮆在西游记中共出现了这些字符鯾在西游记中共出现了这些字符鱑在西游记中共出现了这些字符鱨在西游记中共出现了这些字符鱼在西游记中共出现了这些字符鲁在西游记中共出现了这些字符鲂在西游记中共出现了这些字符鲅在西游记中共出现了这些字符鲆在西游记中共出现了这些字符鲇在西游记中共出现了这些字符鲈在西游记中共出现了这些字符鲊在西游记中共出现了这些字符鲌在西游记中共出现了这些字符鲍在西游记中共出现了这些字符鲙在西游记中共出现了这些字符鲜在西游记中共出现了这些字符鲤在西游记中共出现了这些字符鲥在西游记中共出现了这些字符鲨在西游记中共出现了这些字符鲫在西游记中共出现了这些字符鲭在西游记中共出现了这些字符鲮在西游记中共出现了这些字符鲲在西游记中共出现了这些字符鲳在西游记中共出现了这些字符鲸在西游记中共出现了这些字符鲻在西游记中共出现了这些字符鳅在西游记中共出现了这些字符鳌在西游记中共出现了这些字符鳏在西游记中共出现了这些字符鳖在西游记中共出现了这些字符鳜在西游记中共出现了这些字符鳝在西游记中共出现了这些字符鳞在西游记中共出现了这些字符鳠在西游记中共出现了这些字符鳷在西游记中共出现了这些字符鴏在西游记中共出现了这些字符鷃在西游记中共出现了这些字符鷫在西游记中共出现了这些字符鸟在西游记中共出现了这些字符鸡在西游记中共出现了这些字符鸣在西游记中共出现了这些字符鸥在西游记中共出现了这些字符鸦在西游记中共出现了这些字符鸨在西游记中共出现了这些字符鸪在西游记中共出现了这些字符鸬在西游记中共出现了这些字符鸭在西游记中共出现了这些字符鸯在西游记中共出现了这些字符鸳在西游记中共出现了这些字符鸶在西游记中共出现了这些字符鸽在西游记中共出现了这些字符鸾在西游记中共出现了这些字符鸿在西游记中共出现了这些字符鹁在西游记中共出现了这些字符鹂在西游记中共出现了这些字符鹃在西游记中共出现了这些字符鹄在西游记中共出现了这些字符鹅在西游记中共出现了这些字符鹉在西游记中共出现了这些字符鹊在西游记中共出现了这些字符鹌在西游记中共出现了这些字符鹏在西游记中共出现了这些字符鹐在西游记中共出现了这些字符鹑在西游记中共出现了这些字符鹗在西游记中共出现了这些字符鹚在西游记中共出现了这些字符鹜在西游记中共出现了这些字符鹞在西游记中共出现了这些字符鹤在西游记中共出现了这些字符鹥在西游记中共出现了这些字符鹦在西游记中共出现了这些字符鹧在西游记中共出现了这些字符鹫在西游记中共出现了这些字符鹭在西游记中共出现了这些字符鹰在西游记中共出现了这些字符鹳在西游记中共出现了这些字符鹿在西游记中共出现了这些字符麂在西游记中共出现了这些字符麈在西游记中共出现了这些字符麋在西游记中共出现了这些字符麒在西游记中共出现了这些字符麓在西游记中共出现了这些字符麖在西游记中共出现了这些字符麝在西游记中共出现了这些字符麟在西游记中共出现了这些字符麦在西游记中共出现了这些字符麻在西游记中共出现了这些字符麾在西游记中共出现了这些字符黄在西游记中共出现了这些字符黍在西游记中共出现了这些字符黎在西游记中共出现了这些字符黑在西游记中共出现了这些字符默在西游记中共出现了这些字符黛在西游记中共出现了这些字符黠在西游记中共出现了这些字符黯在西游记中共出现了这些字符鼋在西游记中共出现了这些字符鼍在西游记中共出现了这些字符鼎在西游记中共出现了这些字符鼓在西游记中共出现了这些字符鼠在西游记中共出现了这些字符鼻在西游记中共出现了这些字符鼾在西游记中共出现了这些字符齁在西游记中共出现了这些字符齆在西游记中共出现了这些字符齐在西游记中共出现了这些字符齑在西游记中共出现了这些字符齿在西游记中共出现了这些字符龁在西游记中共出现了这些字符龄在西游记中共出现了这些字符龈在西游记中共出现了这些字符龙在西游记中共出现了这些字符龚在西游记中共出现了这些字符龛在西游记中共出现了这些字符龟在西游记中共出现了这些字符！在西游记中共出现了这些字符（在西游记中共出现了这些字符）在西游记中共出现了这些字符＋在西游记中共出现了这些字符，在西游记中共出现了这些字符．在西游记中共出现了这些字符：在西游记中共出现了这些字符；在西游记中共出现了这些字符？在西游记中共出现了这些字符ｗ在西游记中共出现了这些字符￥在西游记中共出现了这些字符�\n",
      "字符的数量为：4521\n"
     ]
    }
   ],
   "source": [
    "\n",
    "chars = sorted(list(set(text)))\n",
    "vocab_size = len(chars)   \n",
    "print('在西游记中共出现了这些字符'.join(chars))\n",
    "print('字符的数量为：'+str(vocab_size))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "- 接下来我们按照nanoGPT项目中默认提供的原版方式来进行简易的encoder和decoder设置\n",
    "    - 这里其实就是简单地将每个字符替换为与原来对应的数字这样，对于简单的，只有26个英文字母组成的英文似乎是合理的"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[1445, 1780, 1004, 1375, 2815]\n",
      "我是孙悟空\n"
     ]
    }
   ],
   "source": [
    "# Way1\n",
    "stoi = { ch:i for i,ch in enumerate(chars) }\n",
    "itos = { i:ch for i,ch in enumerate(chars) }\n",
    "encode = lambda s: [stoi[c] for c in s] # 这是编码器 用于将编码器编码成整数的向量\n",
    "decode = lambda l: ''.join([itos[i] for i in l]) # 这是解码器，用于将整数向量解码回原来的文字\n",
    "print(encode(\"我是孙悟空\"))\n",
    "print(decode(encode(\"我是孙悟空\")))\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "相比于上一章节的内容，这次我们首先选择更新另一种解码的方式"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "- 此时，我们要学会划分好训练集和测试集，同时将已有的数据转化为Tensor类型，从这里torch开始出场\n",
    "    - 关于`torch`的安装方式:\n",
    "    - 划分训练集和测试集"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[0,\n",
       " 2863,\n",
       " 48,\n",
       " 779,\n",
       " 41,\n",
       " 2321,\n",
       " 1934,\n",
       " 3143,\n",
       " 1001,\n",
       " 2263,\n",
       " 2179,\n",
       " 386,\n",
       " 41,\n",
       " 1305,\n",
       " 1341,\n",
       " 250,\n",
       " 1553,\n",
       " 885,\n",
       " 3946,\n",
       " 2558,\n",
       " 0,\n",
       " 0,\n",
       " 3636,\n",
       " 1817,\n",
       " 4515,\n",
       " 0,\n",
       " 0,\n",
       " 2232,\n",
       " 2121,\n",
       " 1839,\n",
       " 393,\n",
       " 886,\n",
       " 804,\n",
       " 110,\n",
       " 4513,\n",
       " 3289,\n",
       " 3289,\n",
       " 2253,\n",
       " 2253,\n",
       " 1751,\n",
       " 141,\n",
       " 3576,\n",
       " 43,\n",
       " 0,\n",
       " 0,\n",
       " 3211,\n",
       " 152,\n",
       " 2649,\n",
       " 553,\n",
       " 2718,\n",
       " 4446,\n",
       " 3369,\n",
       " 4513,\n",
       " 1249,\n",
       " 3875,\n",
       " 152,\n",
       " 337,\n",
       " 2235,\n",
       " 2183,\n",
       " 3877,\n",
       " 43,\n",
       " 0,\n",
       " 0,\n",
       " 3575,\n",
       " 3853,\n",
       " 3073,\n",
       " 2558,\n",
       " 166,\n",
       " 3213,\n",
       " 144,\n",
       " 4513,\n",
       " 543,\n",
       " 1769,\n",
       " 51,\n",
       " 2421,\n",
       " 2624,\n",
       " 1444,\n",
       " 716,\n",
       " 43,\n",
       " 0,\n",
       " 0,\n",
       " 2046,\n",
       " 2702,\n",
       " 3932,\n",
       " 471,\n",
       " 182,\n",
       " 309,\n",
       " 444,\n",
       " 4513,\n",
       " 4250,\n",
       " 2662,\n",
       " 3573,\n",
       " 2252,\n",
       " 4014,\n",
       " 518,\n",
       " 185,\n",
       " 43,\n",
       " 0,\n",
       " 0,\n",
       " 2647,\n",
       " 4120,\n",
       " 886,\n",
       " 804,\n",
       " 90,\n",
       " 1719,\n",
       " 4513,\n",
       " 1828,\n",
       " 483,\n",
       " 117,\n",
       " 51,\n",
       " 103,\n",
       " 484,\n",
       " 327,\n",
       " 2621,\n",
       " 1119,\n",
       " 82,\n",
       " 48,\n",
       " 309,\n",
       " 43,\n",
       " 1076,\n",
       " 48,\n",
       " 309,\n",
       " 393,\n",
       " 82,\n",
       " 483,\n",
       " 117,\n",
       " 182,\n",
       " 4513,\n",
       " 86,\n",
       " 999,\n",
       " 42,\n",
       " 58,\n",
       " 42,\n",
       " 1053,\n",
       " 42,\n",
       " 507,\n",
       " 42,\n",
       " 3879,\n",
       " 42,\n",
       " 1173,\n",
       " 42,\n",
       " 486,\n",
       " 42,\n",
       " 1839,\n",
       " 42,\n",
       " 2565,\n",
       " 42,\n",
       " 3983,\n",
       " 42,\n",
       " 1441,\n",
       " 42,\n",
       " 130,\n",
       " 90,\n",
       " 483,\n",
       " 117,\n",
       " 1696,\n",
       " 105,\n",
       " 43,\n",
       " 2078,\n",
       " 182,\n",
       " 3645,\n",
       " 48,\n",
       " 51,\n",
       " 325,\n",
       " 2621,\n",
       " 1119,\n",
       " 43,\n",
       " 60,\n",
       " 1090,\n",
       " 48,\n",
       " 1753,\n",
       " 3101,\n",
       " 3617,\n",
       " 4515,\n",
       " 999,\n",
       " 1761,\n",
       " 1296,\n",
       " 4142,\n",
       " 2093,\n",
       " 4513,\n",
       " 3101,\n",
       " 58,\n",
       " 400,\n",
       " 4433,\n",
       " 4434,\n",
       " 4516,\n",
       " 1053,\n",
       " 56,\n",
       " 3928,\n",
       " 314,\n",
       " 4513,\n",
       " 3101,\n",
       " 507,\n",
       " 400,\n",
       " 1753,\n",
       " 386,\n",
       " 4516,\n",
       " 3879,\n",
       " 1761,\n",
       " 4281,\n",
       " 583,\n",
       " 4513,\n",
       " 3101,\n",
       " 1173,\n",
       " 400,\n",
       " 1572,\n",
       " 1608,\n",
       " 4516,\n",
       " 1753,\n",
       " 486,\n",
       " 886,\n",
       " 76,\n",
       " 4513,\n",
       " 3101,\n",
       " 1839,\n",
       " 400,\n",
       " 3573,\n",
       " 3818,\n",
       " 4516,\n",
       " 2565,\n",
       " 1761,\n",
       " 1793,\n",
       " 3101,\n",
       " 1753,\n",
       " 3357,\n",
       " 3983,\n",
       " 4516,\n",
       " 1441,\n",
       " 4482,\n",
       " 1770,\n",
       " 3101,\n",
       " 141,\n",
       " 1027,\n",
       " 130,\n",
       " 43,\n",
       " 3598,\n",
       " 118,\n",
       " 885,\n",
       " 1719,\n",
       " 4513,\n",
       " 3273,\n",
       " 411,\n",
       " 1441,\n",
       " 182,\n",
       " 90,\n",
       " 2981,\n",
       " 4513,\n",
       " 400,\n",
       " 886,\n",
       " 804,\n",
       " 1770,\n",
       " 3369,\n",
       " 3101,\n",
       " 51,\n",
       " 2421,\n",
       " 595,\n",
       " 2701,\n",
       " 43,\n",
       " 345,\n",
       " 532,\n",
       " 122,\n",
       " 484,\n",
       " 778,\n",
       " 2621,\n",
       " 1119,\n",
       " 4513,\n",
       " 129,\n",
       " 130,\n",
       " 182,\n",
       " 90,\n",
       " 403,\n",
       " 4513,\n",
       " 400,\n",
       " 1273,\n",
       " 4485,\n",
       " 1809,\n",
       " 4513,\n",
       " 3101,\n",
       " 71,\n",
       " 4115,\n",
       " 141,\n",
       " 2421,\n",
       " 252,\n",
       " 1751,\n",
       " 2701,\n",
       " 4513,\n",
       " 1703,\n",
       " 1817,\n",
       " 2232,\n",
       " 2121,\n",
       " 43,\n",
       " 537,\n",
       " 122,\n",
       " 484,\n",
       " 778,\n",
       " 2621,\n",
       " 1119,\n",
       " 4513,\n",
       " 130,\n",
       " 182,\n",
       " 1076,\n",
       " 2981,\n",
       " 4513,\n",
       " 3713,\n",
       " 55,\n",
       " 3773,\n",
       " 309,\n",
       " 4513,\n",
       " 3891,\n",
       " 999,\n",
       " 90,\n",
       " 182,\n",
       " 4513,\n",
       " 3101,\n",
       " 876,\n",
       " 3924,\n",
       " 2239,\n",
       " 1249,\n",
       " 1769,\n",
       " 43,\n",
       " 3966,\n",
       " 1240,\n",
       " 3243,\n",
       " 1817,\n",
       " 4515,\n",
       " 37,\n",
       " 356,\n",
       " 3213,\n",
       " 999,\n",
       " 90,\n",
       " 488,\n",
       " 4513,\n",
       " 886,\n",
       " 1305,\n",
       " 1751,\n",
       " 1699,\n",
       " 2794,\n",
       " 43,\n",
       " 48,\n",
       " 4142,\n",
       " 403,\n",
       " 448,\n",
       " 874,\n",
       " 4513,\n",
       " 51,\n",
       " 2421,\n",
       " 1839,\n",
       " 2558,\n",
       " 1761,\n",
       " 43,\n",
       " 38,\n",
       " 411,\n",
       " 2056,\n",
       " 4513,\n",
       " 886,\n",
       " 941,\n",
       " 1828,\n",
       " 1934,\n",
       " 43,\n",
       " 345,\n",
       " 122,\n",
       " 484,\n",
       " 778,\n",
       " 2621,\n",
       " 1119,\n",
       " 4513,\n",
       " 2055,\n",
       " 1273,\n",
       " 999,\n",
       " 182,\n",
       " 4513,\n",
       " 3852,\n",
       " 2235,\n",
       " 54,\n",
       " 3192,\n",
       " 4513,\n",
       " 1828,\n",
       " 1753,\n",
       " 4513,\n",
       " 1828,\n",
       " 1827,\n",
       " 4513,\n",
       " 1828,\n",
       " 1774,\n",
       " 4513,\n",
       " 1828,\n",
       " 3879,\n",
       " 43,\n",
       " 1753,\n",
       " 42,\n",
       " 1827,\n",
       " 42,\n",
       " 1774,\n",
       " 42,\n",
       " 3879,\n",
       " 4513,\n",
       " 3675,\n",
       " 90,\n",
       " 778,\n",
       " 3702,\n",
       " 43,\n",
       " 1703,\n",
       " 1817,\n",
       " 4513,\n",
       " 886,\n",
       " 1249,\n",
       " 118,\n",
       " 999,\n",
       " 43,\n",
       " 537,\n",
       " 2985,\n",
       " 122,\n",
       " 484,\n",
       " 778,\n",
       " 2621,\n",
       " 1119,\n",
       " 4513,\n",
       " 999,\n",
       " 182,\n",
       " 1076,\n",
       " 2981,\n",
       " 4513,\n",
       " 3891,\n",
       " 58,\n",
       " 90,\n",
       " 182,\n",
       " 4513,\n",
       " 3101,\n",
       " 3924,\n",
       " 2239,\n",
       " 815,\n",
       " 1031,\n",
       " 43,\n",
       " 1771,\n",
       " 1817,\n",
       " 4515,\n",
       " 37,\n",
       " 885,\n",
       " 660,\n",
       " 112,\n",
       " 309,\n",
       " 4509,\n",
       " 3213,\n",
       " 660,\n",
       " 821,\n",
       " 309,\n",
       " 4509,\n",
       " 51,\n",
       " 2421,\n",
       " 3741,\n",
       " 2558,\n",
       " 4513,\n",
       " 86,\n",
       " 4249,\n",
       " 1487,\n",
       " 886,\n",
       " 43,\n",
       " 38,\n",
       " 3213,\n",
       " 2056,\n",
       " 4513,\n",
       " 804,\n",
       " 941,\n",
       " 374,\n",
       " 2988,\n",
       " 43,\n",
       " 345,\n",
       " 122,\n",
       " 484,\n",
       " 778,\n",
       " 2621,\n",
       " 1119,\n",
       " 4513,\n",
       " 2055,\n",
       " 1273,\n",
       " 58,\n",
       " 182,\n",
       " 4513,\n",
       " 4016,\n",
       " 2183,\n",
       " 55,\n",
       " 374,\n",
       " 4513,\n",
       " 1828,\n",
       " 2097,\n",
       " 4513,\n",
       " 1828,\n",
       " 2317,\n",
       " 4513,\n",
       " 1828,\n",
       " 1117,\n",
       " 4513,\n",
       " 1828,\n",
       " 2709,\n",
       " 4513,\n",
       " 1828,\n",
       " 798,\n",
       " 43,\n",
       " 2097,\n",
       " 42,\n",
       " 2317,\n",
       " 42,\n",
       " 1117,\n",
       " 42,\n",
       " 2709,\n",
       " 42,\n",
       " 798,\n",
       " 3675,\n",
       " 90,\n",
       " 122,\n",
       " 1276,\n",
       " 43,\n",
       " 1703,\n",
       " 1817,\n",
       " 4513,\n",
       " 804,\n",
       " 3875,\n",
       " 118,\n",
       " 58,\n",
       " 43,\n",
       " 537,\n",
       " 2985,\n",
       " 122,\n",
       " 484,\n",
       " 778,\n",
       " 2621,\n",
       " 1119,\n",
       " 4513,\n",
       " 58,\n",
       " 182,\n",
       " 2981,\n",
       " 3101,\n",
       " 1053,\n",
       " 182,\n",
       " 90,\n",
       " 403,\n",
       " 4513,\n",
       " 543,\n",
       " 2558,\n",
       " 51,\n",
       " 2421,\n",
       " 43,\n",
       " 520,\n",
       " 1817,\n",
       " 4515,\n",
       " 37,\n",
       " 886,\n",
       " 2093,\n",
       " 55,\n",
       " 4155,\n",
       " 4513,\n",
       " 804,\n",
       " 2093,\n",
       " 54,\n",
       " 485,\n",
       " 4516,\n",
       " 886,\n",
       " 804,\n",
       " 129,\n",
       " 578,\n",
       " 4513,\n",
       " 3073,\n",
       " 2421,\n",
       " 2624,\n",
       " 2558,\n",
       " 43,\n",
       " 38,\n",
       " 3213,\n",
       " 2056,\n",
       " 4513,\n",
       " 886,\n",
       " 2235,\n",
       " 804,\n",
       " 2409,\n",
       " 4513,\n",
       " 4143,\n",
       " 4142,\n",
       " 129,\n",
       " 578,\n",
       " 43,\n",
       " 345,\n",
       " 122,\n",
       " 484,\n",
       " 778,\n",
       " 2621,\n",
       " 1119,\n",
       " 4513,\n",
       " 2055,\n",
       " 1273,\n",
       " 1053,\n",
       " 182,\n",
       " 4513,\n",
       " 2558,\n",
       " 141,\n",
       " 4513,\n",
       " 2558,\n",
       " 340,\n",
       " 4513,\n",
       " 2558,\n",
       " 2777,\n",
       " 4513,\n",
       " 2055,\n",
       " 3675,\n",
       " 886,\n",
       " 804,\n",
       " 141,\n",
       " 4513,\n",
       " 53,\n",
       " 1466,\n",
       " 1027,\n",
       " 201,\n",
       " 43,\n",
       " 1703,\n",
       " 1817,\n",
       " 4513,\n",
       " 141,\n",
       " 2558,\n",
       " 118,\n",
       " 1053,\n",
       " 43,\n",
       " 1413,\n",
       " 2649,\n",
       " 553,\n",
       " 1249,\n",
       " 3875,\n",
       " 4513,\n",
       " 53,\n",
       " 2625,\n",
       " 2138,\n",
       " 62,\n",
       " 4513,\n",
       " 122,\n",
       " 1194,\n",
       " 1027,\n",
       " 187,\n",
       " 4513,\n",
       " 62,\n",
       " 2570,\n",
       " 90,\n",
       " 4115,\n",
       " 4513,\n",
       " 3941,\n",
       " 393,\n",
       " 82,\n",
       " 778,\n",
       " 885,\n",
       " 3975,\n",
       " 2175,\n",
       " 4515,\n",
       " 1817,\n",
       " 67,\n",
       " 3156,\n",
       " 2759,\n",
       " 2175,\n",
       " 4513,\n",
       " 1817,\n",
       " 3573,\n",
       " 2416,\n",
       " 3733,\n",
       " 2175,\n",
       " 4513,\n",
       " 1817,\n",
       " 496,\n",
       " 3761,\n",
       " 3975,\n",
       " 2175,\n",
       " 4513,\n",
       " 1817,\n",
       " 472,\n",
       " 252,\n",
       " 3253,\n",
       " 2175,\n",
       " 43,\n",
       " 3895,\n",
       " 3975,\n",
       " 108,\n",
       " 494,\n",
       " 3522,\n",
       " 67,\n",
       " 3156,\n",
       " 2759,\n",
       " 2175,\n",
       " 43,\n",
       " 2195,\n",
       " 879,\n",
       " 1828,\n",
       " 48,\n",
       " 790,\n",
       " 798,\n",
       " 4513,\n",
       " 582,\n",
       " 1817,\n",
       " 292,\n",
       " 1867,\n",
       " 790,\n",
       " 43,\n",
       " 790,\n",
       " 3891,\n",
       " 885,\n",
       " 2195,\n",
       " 4513,\n",
       " 2195,\n",
       " 76,\n",
       " 1828,\n",
       " 48,\n",
       " 1236,\n",
       " 1117,\n",
       " 4513,\n",
       " 688,\n",
       " 82,\n",
       " 3258,\n",
       " 1889,\n",
       " 1117,\n",
       " 43,\n",
       " 2056,\n",
       " 1117,\n",
       " 86,\n",
       " 483,\n",
       " 2175,\n",
       " 90,\n",
       " 2754,\n",
       " 3166,\n",
       " 4513,\n",
       " 53,\n",
       " 1125,\n",
       " 90,\n",
       " 1867,\n",
       " 4505,\n",
       " 4513,\n",
       " 3211,\n",
       " 1249,\n",
       " 2235,\n",
       " 2183,\n",
       " 3101,\n",
       " 2836,\n",
       " 4513,\n",
       " 4446,\n",
       " 3369,\n",
       " 405,\n",
       " 583,\n",
       " 3101,\n",
       " 1444,\n",
       " 43,\n",
       " 2664,\n",
       " 74,\n",
       " 919,\n",
       " 1117,\n",
       " 4509,\n",
       " 1828,\n",
       " 3631,\n",
       " 3745,\n",
       " 82,\n",
       " 3623,\n",
       " 43,\n",
       " 3745,\n",
       " 1817,\n",
       " 4515,\n",
       " 0,\n",
       " 0,\n",
       " 455,\n",
       " 4095,\n",
       " 2113,\n",
       " 2168,\n",
       " 4513,\n",
       " 956,\n",
       " 1016,\n",
       " 2541,\n",
       " 2195,\n",
       " 43,\n",
       " 455,\n",
       " 4095,\n",
       " 2113,\n",
       " 2168,\n",
       " 4513,\n",
       " 2300,\n",
       " 2202,\n",
       " 4067,\n",
       " 1117,\n",
       " 4398,\n",
       " 323,\n",
       " 2811,\n",
       " 4516,\n",
       " 956,\n",
       " 1016,\n",
       " 2541,\n",
       " 2195,\n",
       " 4513,\n",
       " 2154,\n",
       " 3095,\n",
       " 4193,\n",
       " 2192,\n",
       " 3470,\n",
       " 2776,\n",
       " 2236,\n",
       " 43,\n",
       " 1838,\n",
       " 2317,\n",
       " 1740,\n",
       " 4168,\n",
       " 4369,\n",
       " 2792,\n",
       " 54,\n",
       " 4513,\n",
       " 67,\n",
       " 2195,\n",
       " 90,\n",
       " 874,\n",
       " 3111,\n",
       " 1140,\n",
       " 1157,\n",
       " 43,\n",
       " 81,\n",
       " 1144,\n",
       " 1343,\n",
       " 2709,\n",
       " 4513,\n",
       " 423,\n",
       " 864,\n",
       " 900,\n",
       " 1138,\n",
       " 43,\n",
       " 81,\n",
       " 1144,\n",
       " 54,\n",
       " 4513,\n",
       " 1278,\n",
       " 377,\n",
       " 541,\n",
       " 4434,\n",
       " 4516,\n",
       " 423,\n",
       " 864,\n",
       " 425,\n",
       " 4513,\n",
       " 4474,\n",
       " 4478,\n",
       " 2452,\n",
       " 504,\n",
       " 43,\n",
       " 1138,\n",
       " 894,\n",
       " 1761,\n",
       " 599,\n",
       " 4088,\n",
       " 4433,\n",
       " 4434,\n",
       " 4513,\n",
       " 2709,\n",
       " 2831,\n",
       " 2078,\n",
       " 3577,\n",
       " 4505,\n",
       " 386,\n",
       " 323,\n",
       " 43,\n",
       " 1887,\n",
       " 76,\n",
       " 1828,\n",
       " 1073,\n",
       " 4470,\n",
       " 159,\n",
       " 2443,\n",
       " 4513,\n",
       " 1926,\n",
       " 54,\n",
       " 1828,\n",
       " 2321,\n",
       " 2777,\n",
       " 2488,\n",
       " 4462,\n",
       " 43,\n",
       " 2541,\n",
       " 3298,\n",
       " 900,\n",
       " 3258,\n",
       " 56,\n",
       " 3681,\n",
       " 4513,\n",
       " 4217,\n",
       " 1878,\n",
       " 3087,\n",
       " 1902,\n",
       " 4106,\n",
       " 1776,\n",
       " 43,\n",
       " 159,\n",
       " 1938,\n",
       " 1199,\n",
       " 2988,\n",
       " 1889,\n",
       " 4513,\n",
       " 250,\n",
       " 2846,\n",
       " 2078,\n",
       " 2573,\n",
       " 120,\n",
       " 43,\n",
       " 48,\n",
       " 1866,\n",
       " 2210,\n",
       " 866,\n",
       " 3418,\n",
       " 3349,\n",
       " 1054,\n",
       " 4513,\n",
       " 778,\n",
       " 4224,\n",
       " 527,\n",
       " 845,\n",
       " 3298,\n",
       " 3239,\n",
       " 1739,\n",
       " 43,\n",
       " 2055,\n",
       " 1780,\n",
       " 2621,\n",
       " 1160,\n",
       " 182,\n",
       " 874,\n",
       " 1687,\n",
       " 886,\n",
       " 1916,\n",
       " 4513,\n",
       " 51,\n",
       " 451,\n",
       " 1751,\n",
       " 2794,\n",
       " 885,\n",
       " 804,\n",
       " 1934,\n",
       " 43,\n",
       " 3962,\n",
       " 1236,\n",
       " 1117,\n",
       " 4513,\n",
       " 2055,\n",
       " 1273,\n",
       " 4246,\n",
       " 54,\n",
       " 4513,\n",
       " 1828,\n",
       " 48,\n",
       " 814,\n",
       " 159,\n",
       " 2709,\n",
       " 43,\n",
       " 334,\n",
       " 2709,\n",
       " 1828,\n",
       " 53,\n",
       " 52,\n",
       " 327,\n",
       " 1093,\n",
       " 122,\n",
       " 1068,\n",
       " 4369,\n",
       " 4513,\n",
       " 1828,\n",
       " 117,\n",
       " 52,\n",
       " 778,\n",
       " 1093,\n",
       " 787,\n",
       " 793,\n",
       " 43,\n",
       " 53,\n",
       " 52,\n",
       " 327,\n",
       " 1093,\n",
       " 122,\n",
       " 1068,\n",
       " 4369,\n",
       " 4513,\n",
       " 1557,\n",
       " 620,\n",
       " 886,\n",
       " 53,\n",
       " 2621,\n",
       " 327,\n",
       " 483,\n",
       " 122,\n",
       " 1235,\n",
       " 4516,\n",
       " 117,\n",
       " 52,\n",
       " 778,\n",
       " 1093,\n",
       " 787,\n",
       " 793,\n",
       " 4513,\n",
       " 1557,\n",
       " 1702,\n",
       " 520,\n",
       " 117,\n",
       " 483,\n",
       " 778,\n",
       " 2093,\n",
       " 43,\n",
       " 54,\n",
       " 1828,\n",
       " ...]"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "encode(text)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [],
   "source": [
    "import torch\n",
    "# 开始划分训练集和测试集\n",
    "\n",
    "data = torch.tensor(encode(text), dtype=torch.long)   # Way 1 \n",
    "# data = torch.tensor(enc.encode(text), dtype=torch.long)  # Way 2\n",
    "\n",
    "n = int(0.9*len(data)) # first 90% will be train, rest val\n",
    "train_data = data[:n]\n",
    "val_data = data[n:]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "4531"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 模型参数设置位置！\n",
    "device = 'cpu'  # 代码运行的位置\n",
    "block_size = 16  # 每个单元的最大长度\n",
    "batch_size = 32 # 同时运行的批次大小\n",
    "vocab_size = vocab_size + 10  # 前文中我们已经获取过这个参数，指的是在我们的训练语料中出现的词汇的数量的大小\n",
    "\n",
    "learning_rate = 0.3\n",
    "\n",
    "max_iters = 1000\n",
    "\n",
    "eval_interval = 300  # 对当前模型的运行结果进行评估的epoch数量\n",
    "eval_iters = 200\n",
    "#....\n",
    "vocab_size"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "- Batch\n",
    "    - 我们必须清楚，在深度网络传播的过程中，我们不可能一次性将所有的数据都加载到网络中\n",
    "    - 这个时候我们必须分批次进行，也即每次执行一个batch大小的数据，而这里的batch的大小我们称之为`batch_size`\n",
    "    - 在通常的任务中，我们一般通过构建Dataset和DataLoader来实现数据的分批次传入\n",
    "    - 但是nanoGPT作为致力于极简实现GPT的项目，选择自己去写get-batch操作\n",
    "    - 也是这个时候，我们引入模型参数的概念"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 每次从数据集中获取x和y\n",
    "def get_batch(split):\n",
    "    # generate a small batch of data of inputs x and targets y\n",
    "    data = train_data if split == 'train' else val_data\n",
    "    ix = torch.randint(len(data) - block_size, (batch_size,))\n",
    "    x = torch.stack([data[i:i+block_size] for i in ix])\n",
    "    y = torch.stack([data[i+1:i+block_size+1] for i in ix])\n",
    "    return x, y"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "在做完这些之后，我们可以满心欢喜地去写我们模型，为了便于理解，我们首先从简单的二元回归模型出发打造一个极简的GPT\n",
    "- 这里会引入nn.Embedding的概念\n",
    "    - 关于nn.Embedding，详情见<a href=\"./Embedding.ipynb\">Embedding详解</a>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [],
   "source": [
    "import torch.nn as nn\n",
    "import torch.nn.functional as F\n",
    "class BLM(nn.Module):\n",
    "    def __init__(self,vocab_size):\n",
    "        super().__init__()\n",
    "        self.token_embedding_table = nn.Embedding(vocab_size,vocab_size)\n",
    "    \n",
    "    def forward(self,idx,targets = None):\n",
    "        # 这里的self，就是我们之前的x，target就是之前的y\n",
    "        logits = self.token_embedding_table(idx) # (B,T)  -> (B,T,C)  # 这里我们通过Embedding操作直接得到预测分数\n",
    "        # 这里的预测分数过程与二分类或者多分类的分数是大致相同的\n",
    "\n",
    "        \n",
    "        if targets is None:\n",
    "            loss = None\n",
    "        else:   \n",
    "            B, T, C = logits.shape\n",
    "            logits = logits.view(B*T, C)\n",
    "            targets = targets.view(B*T)    # 这里我们调整一下形状，以符合torch的交叉熵损失函数对于输入的变量的要求\n",
    "            loss = F.cross_entropy(logits, targets)\n",
    "\n",
    "        return logits, loss\n",
    "\n",
    "    def generate(self, idx, max_new_tokens):\n",
    "        '''\n",
    "        idx 是现在的输入的(B, T) array of indices in the current context\n",
    "        max_new_tokens 是产生的最大的tokens数量\n",
    "        '''\n",
    "\n",
    "        for _ in range(max_new_tokens):\n",
    "            # 得到预测的结果\n",
    "            logits, loss = self(idx)\n",
    "            \n",
    "            # 只关注最后一个的预测\n",
    "            logits = logits[:, -1, :] # becomes (B, C)\n",
    "            # 对概率值应用softmax\n",
    "            probs = F.softmax(logits, dim=-1) # (B, C)\n",
    "            # 对input的每一行做n_samples次取值，输出的张量是每一次取值时input张量对应行的下标，也即找到概率值输出最大的下标，也对应着最大的编码\n",
    "            idx_next = torch.multinomial(probs, num_samples=1) # (B, 1)\n",
    "            # 将新产生的编码加入到之前的编码中，形成新的编码\n",
    "            idx = torch.cat((idx, idx_next), dim=1) # (B, T+1)\n",
    "        return idx "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "这里我们有必要讲解下我们所要构造的输入x和输出y是什么样子的\n",
    "这对于理解GPT训练过程有很直观的帮助理解"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "inputs:\n",
      "torch.Size([32, 16])\n",
      "tensor([[  38, 3962,  126, 1079,  930, 4513, 1676,  323, 4107, 4015, 1505, 3946,\n",
      "         4515,   37,  885,  799],\n",
      "        [  51, 1834, 2490, 3785,   48, 4155, 4509,   38,    0,    0,  921, 1867,\n",
      "          510,   55, 3322,  564],\n",
      "        [2560, 3312, 4513,  179,  141,  800, 1835, 4107, 2866,  261, 3602,  244,\n",
      "           43, 1080, 1761, 4513],\n",
      "        [4513, 1457,   48, 4246, 4217,   56, 4217,   42, 2622,   56, 2622, 2623,\n",
      "         2908,   68,  368, 1200],\n",
      "        [3098,  930, 3946, 4515,   37,  212, 1828,  207, 3599, 4517,   38, 1079,\n",
      "          930, 3946, 4515,   37],\n",
      "        [4515, 3769,   54,  519, 4513, 1069, 3962, 1343, 1481,   74, 3193,  999,\n",
      "         3946, 4515,   37,  885],\n",
      "        [ 659,  659, 2623, 3894, 2855,   43,  684,  297, 4341, 3946, 4515,   37,\n",
      "         3895, 2164, 2421, 4513],\n",
      "        [4381,   42,  193,  239, 3436,   48,  871,  727, 3773,   43,  117,  141,\n",
      "         3946, 4515,   37, 3932],\n",
      "        [  43, 3962, 3098, 3100, 2662, 3576, 4513,  690, 1296, 3789,  259,  800,\n",
      "          804, 4513,  552, 4015],\n",
      "        [1780,   37,  694,  749,  618,  561,   14,  552, 3910,   15,  607,   38,\n",
      "          327, 1002, 2664, 3592],\n",
      "        [2623, 3496, 3496, 1340, 3213,   76,  350, 1185, 4515,   37, 1505,  484,\n",
      "         1119, 2073,   55, 4513],\n",
      "        [ 871, 4369,  559, 3946, 4515,   37,  212, 1780, 3962, 4015, 1867, 2623,\n",
      "           74, 2476,  633, 1084],\n",
      "        [2405,   43,  212,  149,  772,   54, 4107, 1867, 4513, 1337, 4018,  545,\n",
      "         3602, 4513,  558, 1333],\n",
      "        [2672,   91, 4019,   81, 1212, 2555, 4192, 3213, 1040,   76, 4513,  313,\n",
      "          592,  113,   48,   80],\n",
      "        [  42, 1453,   42, 1734,   42, 4048,   42, 2083,   42, 4103,   42, 4238,\n",
      "           42, 4043,   42, 1563],\n",
      "        [3962, 4015, 3881, 2819, 1079, 4513, 2830, 2672,   48, 2831,  930, 2933,\n",
      "           43,   53,  887,  999],\n",
      "        [   0,    0,   37, 4333, 4326, 4513,  212, 1045,  800, 3962, 4015, 1102,\n",
      "          203, 4517, 1780,  207],\n",
      "        [3881,  931, 2148, 1035, 4513, 1751, 4150,  886, 1360, 2123,   43,  354,\n",
      "         1015, 1096, 2200, 4161],\n",
      "        [3511, 3100, 3946, 4515,   37, 3702,  156, 3895, 3230, 1392, 1333, 3098,\n",
      "         1004, 4513, 2296, 3840],\n",
      "        [2947, 1340, 4513,  781, 2056, 4513, 2490, 1194, 2426, 3657,  921, 1867,\n",
      "         1707, 4338,   43,   38],\n",
      "        [1445, 3098, 1004,  411,  874, 4015,  141, 2387, 4513,  543,   48, 1261,\n",
      "         1485, 1723, 4513, 1491],\n",
      "        [ 310, 1260,  165,  218,   74, 3041,  804, 2148, 1867,   43,   38, 3962,\n",
      "          326,   83,  558, 4120],\n",
      "        [ 919,   57,  212, 3928, 1505,   43,   38, 3511, 3100, 3946, 4515,   37,\n",
      "         1445, 1780,  684,   53],\n",
      "        [   0,  511, 3655, 3962,  887,  999, 3772,  411, 1117, 4107,  425, 4513,\n",
      "           56, 3576,  113, 2620],\n",
      "        [3895, 1780, 1445, 1182, 2405, 1500, 1867, 2623, 3322, 3258, 4513,  212,\n",
      "          105,   56, 3601, 1296],\n",
      "        [ 325, 1446, 4513, 2125,  297, 4513,  212, 3978, 3773, 1867,   43, 1769,\n",
      "         1753, 1486, 1071, 1182],\n",
      "        [  86,   50,  310, 1260,   90,  139,   43,  149, 4120,  326,   83, 1780,\n",
      "         2416,  885,  668,  162],\n",
      "        [2662, 4513,  212, 1466, 3601, 1296, 1445, 3098, 1004, 4509,   38,  179,\n",
      "          297,  599, 2672, 4513],\n",
      "        [2055,  483,   53, 4513, 2491, 1035,  885,  179, 1491, 2985, 3668,   43,\n",
      "         3946,  805, 1249, 2286],\n",
      "        [  90, 2421, 4513,  376, 1828,  103, 2822, 3100, 4513, 2624,  563,  163,\n",
      "          250, 3511, 1444,  159],\n",
      "        [4019, 3010, 1867, 4513, 3574, 1552, 1004, 3511, 3100,   43,   38,    0,\n",
      "            0,  117, 1343, 4258],\n",
      "        [3172, 4513, 2284,  113, 4275,  871,   43,  156,   57,   53, 1040,  922,\n",
      "          583,  581, 2665, 4513]])\n",
      "targets:\n",
      "torch.Size([32, 16])\n",
      "tensor([[3962,  126, 1079,  930, 4513, 1676,  323, 4107, 4015, 1505, 3946, 4515,\n",
      "           37,  885,  799, 2406],\n",
      "        [1834, 2490, 3785,   48, 4155, 4509,   38,    0,    0,  921, 1867,  510,\n",
      "           55, 3322,  564, 4513],\n",
      "        [3312, 4513,  179,  141,  800, 1835, 4107, 2866,  261, 3602,  244,   43,\n",
      "         1080, 1761, 4513,  480],\n",
      "        [1457,   48, 4246, 4217,   56, 4217,   42, 2622,   56, 2622, 2623, 2908,\n",
      "           68,  368, 1200,   43],\n",
      "        [ 930, 3946, 4515,   37,  212, 1828,  207, 3599, 4517,   38, 1079,  930,\n",
      "         3946, 4515,   37, 1445],\n",
      "        [3769,   54,  519, 4513, 1069, 3962, 1343, 1481,   74, 3193,  999, 3946,\n",
      "         4515,   37,  885, 2491],\n",
      "        [ 659, 2623, 3894, 2855,   43,  684,  297, 4341, 3946, 4515,   37, 3895,\n",
      "         2164, 2421, 4513,  483],\n",
      "        [  42,  193,  239, 3436,   48,  871,  727, 3773,   43,  117,  141, 3946,\n",
      "         4515,   37, 3932,  471],\n",
      "        [3962, 3098, 3100, 2662, 3576, 4513,  690, 1296, 3789,  259,  800,  804,\n",
      "         4513,  552, 4015,  558],\n",
      "        [  37,  694,  749,  618,  561,   14,  552, 3910,   15,  607,   38,  327,\n",
      "         1002, 2664, 3592,   43],\n",
      "        [3496, 3496, 1340, 3213,   76,  350, 1185, 4515,   37, 1505,  484, 1119,\n",
      "         2073,   55, 4513,  879],\n",
      "        [4369,  559, 3946, 4515,   37,  212, 1780, 3962, 4015, 1867, 2623,   74,\n",
      "         2476,  633, 1084, 4513],\n",
      "        [  43,  212,  149,  772,   54, 4107, 1867, 4513, 1337, 4018,  545, 3602,\n",
      "         4513,  558, 1333, 3895],\n",
      "        [  91, 4019,   81, 1212, 2555, 4192, 3213, 1040,   76, 4513,  313,  592,\n",
      "          113,   48,   80, 4513],\n",
      "        [1453,   42, 1734,   42, 4048,   42, 2083,   42, 4103,   42, 4238,   42,\n",
      "         4043,   42, 1563,   42],\n",
      "        [4015, 3881, 2819, 1079, 4513, 2830, 2672,   48, 2831,  930, 2933,   43,\n",
      "           53,  887,  999, 2969],\n",
      "        [   0,   37, 4333, 4326, 4513,  212, 1045,  800, 3962, 4015, 1102,  203,\n",
      "         4517, 1780,  207, 1740],\n",
      "        [ 931, 2148, 1035, 4513, 1751, 4150,  886, 1360, 2123,   43,  354, 1015,\n",
      "         1096, 2200, 4161, 4513],\n",
      "        [3100, 3946, 4515,   37, 3702,  156, 3895, 3230, 1392, 1333, 3098, 1004,\n",
      "         4513, 2296, 3840,   56],\n",
      "        [1340, 4513,  781, 2056, 4513, 2490, 1194, 2426, 3657,  921, 1867, 1707,\n",
      "         4338,   43,   38,  921],\n",
      "        [3098, 1004,  411,  874, 4015,  141, 2387, 4513,  543,   48, 1261, 1485,\n",
      "         1723, 4513, 1491,  156],\n",
      "        [1260,  165,  218,   74, 3041,  804, 2148, 1867,   43,   38, 3962,  326,\n",
      "           83,  558, 4120, 1296],\n",
      "        [  57,  212, 3928, 1505,   43,   38, 3511, 3100, 3946, 4515,   37, 1445,\n",
      "         1780,  684,   53, 3413],\n",
      "        [ 511, 3655, 3962,  887,  999, 3772,  411, 1117, 4107,  425, 4513,   56,\n",
      "         3576,  113, 2620,  318],\n",
      "        [1780, 1445, 1182, 2405, 1500, 1867, 2623, 3322, 3258, 4513,  212,  105,\n",
      "           56, 3601, 1296,  671],\n",
      "        [1446, 4513, 2125,  297, 4513,  212, 3978, 3773, 1867,   43, 1769, 1753,\n",
      "         1486, 1071, 1182, 2405],\n",
      "        [  50,  310, 1260,   90,  139,   43,  149, 4120,  326,   83, 1780, 2416,\n",
      "          885,  668,  162, 2055],\n",
      "        [4513,  212, 1466, 3601, 1296, 1445, 3098, 1004, 4509,   38,  179,  297,\n",
      "          599, 2672, 4513, 1809],\n",
      "        [ 483,   53, 4513, 2491, 1035,  885,  179, 1491, 2985, 3668,   43, 3946,\n",
      "          805, 1249, 2286, 1751],\n",
      "        [2421, 4513,  376, 1828,  103, 2822, 3100, 4513, 2624,  563,  163,  250,\n",
      "         3511, 1444,  159,   43],\n",
      "        [3010, 1867, 4513, 3574, 1552, 1004, 3511, 3100,   43,   38,    0,    0,\n",
      "          117, 1343, 4258,  626],\n",
      "        [4513, 2284,  113, 4275,  871,   43,  156,   57,   53, 1040,  922,  583,\n",
      "          581, 2665, 4513,  537]])\n",
      "----\n",
      "when input is [38] the target: 3962\n",
      "when input is [38, 3962] the target: 126\n",
      "when input is [38, 3962, 126] the target: 1079\n",
      "when input is [38, 3962, 126, 1079] the target: 930\n",
      "when input is [38, 3962, 126, 1079, 930] the target: 4513\n",
      "when input is [38, 3962, 126, 1079, 930, 4513] the target: 1676\n",
      "when input is [38, 3962, 126, 1079, 930, 4513, 1676] the target: 323\n",
      "when input is [38, 3962, 126, 1079, 930, 4513, 1676, 323] the target: 4107\n",
      "when input is [38, 3962, 126, 1079, 930, 4513, 1676, 323, 4107] the target: 4015\n",
      "when input is [38, 3962, 126, 1079, 930, 4513, 1676, 323, 4107, 4015] the target: 1505\n",
      "when input is [38, 3962, 126, 1079, 930, 4513, 1676, 323, 4107, 4015, 1505] the target: 3946\n",
      "when input is [38, 3962, 126, 1079, 930, 4513, 1676, 323, 4107, 4015, 1505, 3946] the target: 4515\n",
      "when input is [38, 3962, 126, 1079, 930, 4513, 1676, 323, 4107, 4015, 1505, 3946, 4515] the target: 37\n",
      "when input is [38, 3962, 126, 1079, 930, 4513, 1676, 323, 4107, 4015, 1505, 3946, 4515, 37] the target: 885\n",
      "when input is [38, 3962, 126, 1079, 930, 4513, 1676, 323, 4107, 4015, 1505, 3946, 4515, 37, 885] the target: 799\n",
      "when input is [38, 3962, 126, 1079, 930, 4513, 1676, 323, 4107, 4015, 1505, 3946, 4515, 37, 885, 799] the target: 2406\n",
      "when input is [51] the target: 1834\n",
      "when input is [51, 1834] the target: 2490\n",
      "when input is [51, 1834, 2490] the target: 3785\n",
      "when input is [51, 1834, 2490, 3785] the target: 48\n",
      "when input is [51, 1834, 2490, 3785, 48] the target: 4155\n",
      "when input is [51, 1834, 2490, 3785, 48, 4155] the target: 4509\n",
      "when input is [51, 1834, 2490, 3785, 48, 4155, 4509] the target: 38\n",
      "when input is [51, 1834, 2490, 3785, 48, 4155, 4509, 38] the target: 0\n",
      "when input is [51, 1834, 2490, 3785, 48, 4155, 4509, 38, 0] the target: 0\n",
      "when input is [51, 1834, 2490, 3785, 48, 4155, 4509, 38, 0, 0] the target: 921\n",
      "when input is [51, 1834, 2490, 3785, 48, 4155, 4509, 38, 0, 0, 921] the target: 1867\n",
      "when input is [51, 1834, 2490, 3785, 48, 4155, 4509, 38, 0, 0, 921, 1867] the target: 510\n",
      "when input is [51, 1834, 2490, 3785, 48, 4155, 4509, 38, 0, 0, 921, 1867, 510] the target: 55\n",
      "when input is [51, 1834, 2490, 3785, 48, 4155, 4509, 38, 0, 0, 921, 1867, 510, 55] the target: 3322\n",
      "when input is [51, 1834, 2490, 3785, 48, 4155, 4509, 38, 0, 0, 921, 1867, 510, 55, 3322] the target: 564\n",
      "when input is [51, 1834, 2490, 3785, 48, 4155, 4509, 38, 0, 0, 921, 1867, 510, 55, 3322, 564] the target: 4513\n",
      "when input is [2560] the target: 3312\n",
      "when input is [2560, 3312] the target: 4513\n",
      "when input is [2560, 3312, 4513] the target: 179\n",
      "when input is [2560, 3312, 4513, 179] the target: 141\n",
      "when input is [2560, 3312, 4513, 179, 141] the target: 800\n",
      "when input is [2560, 3312, 4513, 179, 141, 800] the target: 1835\n",
      "when input is [2560, 3312, 4513, 179, 141, 800, 1835] the target: 4107\n",
      "when input is [2560, 3312, 4513, 179, 141, 800, 1835, 4107] the target: 2866\n",
      "when input is [2560, 3312, 4513, 179, 141, 800, 1835, 4107, 2866] the target: 261\n",
      "when input is [2560, 3312, 4513, 179, 141, 800, 1835, 4107, 2866, 261] the target: 3602\n",
      "when input is [2560, 3312, 4513, 179, 141, 800, 1835, 4107, 2866, 261, 3602] the target: 244\n",
      "when input is [2560, 3312, 4513, 179, 141, 800, 1835, 4107, 2866, 261, 3602, 244] the target: 43\n",
      "when input is [2560, 3312, 4513, 179, 141, 800, 1835, 4107, 2866, 261, 3602, 244, 43] the target: 1080\n",
      "when input is [2560, 3312, 4513, 179, 141, 800, 1835, 4107, 2866, 261, 3602, 244, 43, 1080] the target: 1761\n",
      "when input is [2560, 3312, 4513, 179, 141, 800, 1835, 4107, 2866, 261, 3602, 244, 43, 1080, 1761] the target: 4513\n",
      "when input is [2560, 3312, 4513, 179, 141, 800, 1835, 4107, 2866, 261, 3602, 244, 43, 1080, 1761, 4513] the target: 480\n",
      "when input is [4513] the target: 1457\n",
      "when input is [4513, 1457] the target: 48\n",
      "when input is [4513, 1457, 48] the target: 4246\n",
      "when input is [4513, 1457, 48, 4246] the target: 4217\n",
      "when input is [4513, 1457, 48, 4246, 4217] the target: 56\n",
      "when input is [4513, 1457, 48, 4246, 4217, 56] the target: 4217\n",
      "when input is [4513, 1457, 48, 4246, 4217, 56, 4217] the target: 42\n",
      "when input is [4513, 1457, 48, 4246, 4217, 56, 4217, 42] the target: 2622\n",
      "when input is [4513, 1457, 48, 4246, 4217, 56, 4217, 42, 2622] the target: 56\n",
      "when input is [4513, 1457, 48, 4246, 4217, 56, 4217, 42, 2622, 56] the target: 2622\n",
      "when input is [4513, 1457, 48, 4246, 4217, 56, 4217, 42, 2622, 56, 2622] the target: 2623\n",
      "when input is [4513, 1457, 48, 4246, 4217, 56, 4217, 42, 2622, 56, 2622, 2623] the target: 2908\n",
      "when input is [4513, 1457, 48, 4246, 4217, 56, 4217, 42, 2622, 56, 2622, 2623, 2908] the target: 68\n",
      "when input is [4513, 1457, 48, 4246, 4217, 56, 4217, 42, 2622, 56, 2622, 2623, 2908, 68] the target: 368\n",
      "when input is [4513, 1457, 48, 4246, 4217, 56, 4217, 42, 2622, 56, 2622, 2623, 2908, 68, 368] the target: 1200\n",
      "when input is [4513, 1457, 48, 4246, 4217, 56, 4217, 42, 2622, 56, 2622, 2623, 2908, 68, 368, 1200] the target: 43\n",
      "when input is [3098] the target: 930\n",
      "when input is [3098, 930] the target: 3946\n",
      "when input is [3098, 930, 3946] the target: 4515\n",
      "when input is [3098, 930, 3946, 4515] the target: 37\n",
      "when input is [3098, 930, 3946, 4515, 37] the target: 212\n",
      "when input is [3098, 930, 3946, 4515, 37, 212] the target: 1828\n",
      "when input is [3098, 930, 3946, 4515, 37, 212, 1828] the target: 207\n",
      "when input is [3098, 930, 3946, 4515, 37, 212, 1828, 207] the target: 3599\n",
      "when input is [3098, 930, 3946, 4515, 37, 212, 1828, 207, 3599] the target: 4517\n",
      "when input is [3098, 930, 3946, 4515, 37, 212, 1828, 207, 3599, 4517] the target: 38\n",
      "when input is [3098, 930, 3946, 4515, 37, 212, 1828, 207, 3599, 4517, 38] the target: 1079\n",
      "when input is [3098, 930, 3946, 4515, 37, 212, 1828, 207, 3599, 4517, 38, 1079] the target: 930\n",
      "when input is [3098, 930, 3946, 4515, 37, 212, 1828, 207, 3599, 4517, 38, 1079, 930] the target: 3946\n",
      "when input is [3098, 930, 3946, 4515, 37, 212, 1828, 207, 3599, 4517, 38, 1079, 930, 3946] the target: 4515\n",
      "when input is [3098, 930, 3946, 4515, 37, 212, 1828, 207, 3599, 4517, 38, 1079, 930, 3946, 4515] the target: 37\n",
      "when input is [3098, 930, 3946, 4515, 37, 212, 1828, 207, 3599, 4517, 38, 1079, 930, 3946, 4515, 37] the target: 1445\n",
      "when input is [4515] the target: 3769\n",
      "when input is [4515, 3769] the target: 54\n",
      "when input is [4515, 3769, 54] the target: 519\n",
      "when input is [4515, 3769, 54, 519] the target: 4513\n",
      "when input is [4515, 3769, 54, 519, 4513] the target: 1069\n",
      "when input is [4515, 3769, 54, 519, 4513, 1069] the target: 3962\n",
      "when input is [4515, 3769, 54, 519, 4513, 1069, 3962] the target: 1343\n",
      "when input is [4515, 3769, 54, 519, 4513, 1069, 3962, 1343] the target: 1481\n",
      "when input is [4515, 3769, 54, 519, 4513, 1069, 3962, 1343, 1481] the target: 74\n",
      "when input is [4515, 3769, 54, 519, 4513, 1069, 3962, 1343, 1481, 74] the target: 3193\n",
      "when input is [4515, 3769, 54, 519, 4513, 1069, 3962, 1343, 1481, 74, 3193] the target: 999\n",
      "when input is [4515, 3769, 54, 519, 4513, 1069, 3962, 1343, 1481, 74, 3193, 999] the target: 3946\n",
      "when input is [4515, 3769, 54, 519, 4513, 1069, 3962, 1343, 1481, 74, 3193, 999, 3946] the target: 4515\n",
      "when input is [4515, 3769, 54, 519, 4513, 1069, 3962, 1343, 1481, 74, 3193, 999, 3946, 4515] the target: 37\n",
      "when input is [4515, 3769, 54, 519, 4513, 1069, 3962, 1343, 1481, 74, 3193, 999, 3946, 4515, 37] the target: 885\n",
      "when input is [4515, 3769, 54, 519, 4513, 1069, 3962, 1343, 1481, 74, 3193, 999, 3946, 4515, 37, 885] the target: 2491\n",
      "when input is [659] the target: 659\n",
      "when input is [659, 659] the target: 2623\n",
      "when input is [659, 659, 2623] the target: 3894\n",
      "when input is [659, 659, 2623, 3894] the target: 2855\n",
      "when input is [659, 659, 2623, 3894, 2855] the target: 43\n",
      "when input is [659, 659, 2623, 3894, 2855, 43] the target: 684\n",
      "when input is [659, 659, 2623, 3894, 2855, 43, 684] the target: 297\n",
      "when input is [659, 659, 2623, 3894, 2855, 43, 684, 297] the target: 4341\n",
      "when input is [659, 659, 2623, 3894, 2855, 43, 684, 297, 4341] the target: 3946\n",
      "when input is [659, 659, 2623, 3894, 2855, 43, 684, 297, 4341, 3946] the target: 4515\n",
      "when input is [659, 659, 2623, 3894, 2855, 43, 684, 297, 4341, 3946, 4515] the target: 37\n",
      "when input is [659, 659, 2623, 3894, 2855, 43, 684, 297, 4341, 3946, 4515, 37] the target: 3895\n",
      "when input is [659, 659, 2623, 3894, 2855, 43, 684, 297, 4341, 3946, 4515, 37, 3895] the target: 2164\n",
      "when input is [659, 659, 2623, 3894, 2855, 43, 684, 297, 4341, 3946, 4515, 37, 3895, 2164] the target: 2421\n",
      "when input is [659, 659, 2623, 3894, 2855, 43, 684, 297, 4341, 3946, 4515, 37, 3895, 2164, 2421] the target: 4513\n",
      "when input is [659, 659, 2623, 3894, 2855, 43, 684, 297, 4341, 3946, 4515, 37, 3895, 2164, 2421, 4513] the target: 483\n",
      "when input is [4381] the target: 42\n",
      "when input is [4381, 42] the target: 193\n",
      "when input is [4381, 42, 193] the target: 239\n",
      "when input is [4381, 42, 193, 239] the target: 3436\n",
      "when input is [4381, 42, 193, 239, 3436] the target: 48\n",
      "when input is [4381, 42, 193, 239, 3436, 48] the target: 871\n",
      "when input is [4381, 42, 193, 239, 3436, 48, 871] the target: 727\n",
      "when input is [4381, 42, 193, 239, 3436, 48, 871, 727] the target: 3773\n",
      "when input is [4381, 42, 193, 239, 3436, 48, 871, 727, 3773] the target: 43\n",
      "when input is [4381, 42, 193, 239, 3436, 48, 871, 727, 3773, 43] the target: 117\n",
      "when input is [4381, 42, 193, 239, 3436, 48, 871, 727, 3773, 43, 117] the target: 141\n",
      "when input is [4381, 42, 193, 239, 3436, 48, 871, 727, 3773, 43, 117, 141] the target: 3946\n",
      "when input is [4381, 42, 193, 239, 3436, 48, 871, 727, 3773, 43, 117, 141, 3946] the target: 4515\n",
      "when input is [4381, 42, 193, 239, 3436, 48, 871, 727, 3773, 43, 117, 141, 3946, 4515] the target: 37\n",
      "when input is [4381, 42, 193, 239, 3436, 48, 871, 727, 3773, 43, 117, 141, 3946, 4515, 37] the target: 3932\n",
      "when input is [4381, 42, 193, 239, 3436, 48, 871, 727, 3773, 43, 117, 141, 3946, 4515, 37, 3932] the target: 471\n",
      "when input is [43] the target: 3962\n",
      "when input is [43, 3962] the target: 3098\n",
      "when input is [43, 3962, 3098] the target: 3100\n",
      "when input is [43, 3962, 3098, 3100] the target: 2662\n",
      "when input is [43, 3962, 3098, 3100, 2662] the target: 3576\n",
      "when input is [43, 3962, 3098, 3100, 2662, 3576] the target: 4513\n",
      "when input is [43, 3962, 3098, 3100, 2662, 3576, 4513] the target: 690\n",
      "when input is [43, 3962, 3098, 3100, 2662, 3576, 4513, 690] the target: 1296\n",
      "when input is [43, 3962, 3098, 3100, 2662, 3576, 4513, 690, 1296] the target: 3789\n",
      "when input is [43, 3962, 3098, 3100, 2662, 3576, 4513, 690, 1296, 3789] the target: 259\n",
      "when input is [43, 3962, 3098, 3100, 2662, 3576, 4513, 690, 1296, 3789, 259] the target: 800\n",
      "when input is [43, 3962, 3098, 3100, 2662, 3576, 4513, 690, 1296, 3789, 259, 800] the target: 804\n",
      "when input is [43, 3962, 3098, 3100, 2662, 3576, 4513, 690, 1296, 3789, 259, 800, 804] the target: 4513\n",
      "when input is [43, 3962, 3098, 3100, 2662, 3576, 4513, 690, 1296, 3789, 259, 800, 804, 4513] the target: 552\n",
      "when input is [43, 3962, 3098, 3100, 2662, 3576, 4513, 690, 1296, 3789, 259, 800, 804, 4513, 552] the target: 4015\n",
      "when input is [43, 3962, 3098, 3100, 2662, 3576, 4513, 690, 1296, 3789, 259, 800, 804, 4513, 552, 4015] the target: 558\n",
      "when input is [1780] the target: 37\n",
      "when input is [1780, 37] the target: 694\n",
      "when input is [1780, 37, 694] the target: 749\n",
      "when input is [1780, 37, 694, 749] the target: 618\n",
      "when input is [1780, 37, 694, 749, 618] the target: 561\n",
      "when input is [1780, 37, 694, 749, 618, 561] the target: 14\n",
      "when input is [1780, 37, 694, 749, 618, 561, 14] the target: 552\n",
      "when input is [1780, 37, 694, 749, 618, 561, 14, 552] the target: 3910\n",
      "when input is [1780, 37, 694, 749, 618, 561, 14, 552, 3910] the target: 15\n",
      "when input is [1780, 37, 694, 749, 618, 561, 14, 552, 3910, 15] the target: 607\n",
      "when input is [1780, 37, 694, 749, 618, 561, 14, 552, 3910, 15, 607] the target: 38\n",
      "when input is [1780, 37, 694, 749, 618, 561, 14, 552, 3910, 15, 607, 38] the target: 327\n",
      "when input is [1780, 37, 694, 749, 618, 561, 14, 552, 3910, 15, 607, 38, 327] the target: 1002\n",
      "when input is [1780, 37, 694, 749, 618, 561, 14, 552, 3910, 15, 607, 38, 327, 1002] the target: 2664\n",
      "when input is [1780, 37, 694, 749, 618, 561, 14, 552, 3910, 15, 607, 38, 327, 1002, 2664] the target: 3592\n",
      "when input is [1780, 37, 694, 749, 618, 561, 14, 552, 3910, 15, 607, 38, 327, 1002, 2664, 3592] the target: 43\n",
      "when input is [2623] the target: 3496\n",
      "when input is [2623, 3496] the target: 3496\n",
      "when input is [2623, 3496, 3496] the target: 1340\n",
      "when input is [2623, 3496, 3496, 1340] the target: 3213\n",
      "when input is [2623, 3496, 3496, 1340, 3213] the target: 76\n",
      "when input is [2623, 3496, 3496, 1340, 3213, 76] the target: 350\n",
      "when input is [2623, 3496, 3496, 1340, 3213, 76, 350] the target: 1185\n",
      "when input is [2623, 3496, 3496, 1340, 3213, 76, 350, 1185] the target: 4515\n",
      "when input is [2623, 3496, 3496, 1340, 3213, 76, 350, 1185, 4515] the target: 37\n",
      "when input is [2623, 3496, 3496, 1340, 3213, 76, 350, 1185, 4515, 37] the target: 1505\n",
      "when input is [2623, 3496, 3496, 1340, 3213, 76, 350, 1185, 4515, 37, 1505] the target: 484\n",
      "when input is [2623, 3496, 3496, 1340, 3213, 76, 350, 1185, 4515, 37, 1505, 484] the target: 1119\n",
      "when input is [2623, 3496, 3496, 1340, 3213, 76, 350, 1185, 4515, 37, 1505, 484, 1119] the target: 2073\n",
      "when input is [2623, 3496, 3496, 1340, 3213, 76, 350, 1185, 4515, 37, 1505, 484, 1119, 2073] the target: 55\n",
      "when input is [2623, 3496, 3496, 1340, 3213, 76, 350, 1185, 4515, 37, 1505, 484, 1119, 2073, 55] the target: 4513\n",
      "when input is [2623, 3496, 3496, 1340, 3213, 76, 350, 1185, 4515, 37, 1505, 484, 1119, 2073, 55, 4513] the target: 879\n",
      "when input is [871] the target: 4369\n",
      "when input is [871, 4369] the target: 559\n",
      "when input is [871, 4369, 559] the target: 3946\n",
      "when input is [871, 4369, 559, 3946] the target: 4515\n",
      "when input is [871, 4369, 559, 3946, 4515] the target: 37\n",
      "when input is [871, 4369, 559, 3946, 4515, 37] the target: 212\n",
      "when input is [871, 4369, 559, 3946, 4515, 37, 212] the target: 1780\n",
      "when input is [871, 4369, 559, 3946, 4515, 37, 212, 1780] the target: 3962\n",
      "when input is [871, 4369, 559, 3946, 4515, 37, 212, 1780, 3962] the target: 4015\n",
      "when input is [871, 4369, 559, 3946, 4515, 37, 212, 1780, 3962, 4015] the target: 1867\n",
      "when input is [871, 4369, 559, 3946, 4515, 37, 212, 1780, 3962, 4015, 1867] the target: 2623\n",
      "when input is [871, 4369, 559, 3946, 4515, 37, 212, 1780, 3962, 4015, 1867, 2623] the target: 74\n",
      "when input is [871, 4369, 559, 3946, 4515, 37, 212, 1780, 3962, 4015, 1867, 2623, 74] the target: 2476\n",
      "when input is [871, 4369, 559, 3946, 4515, 37, 212, 1780, 3962, 4015, 1867, 2623, 74, 2476] the target: 633\n",
      "when input is [871, 4369, 559, 3946, 4515, 37, 212, 1780, 3962, 4015, 1867, 2623, 74, 2476, 633] the target: 1084\n",
      "when input is [871, 4369, 559, 3946, 4515, 37, 212, 1780, 3962, 4015, 1867, 2623, 74, 2476, 633, 1084] the target: 4513\n",
      "when input is [2405] the target: 43\n",
      "when input is [2405, 43] the target: 212\n",
      "when input is [2405, 43, 212] the target: 149\n",
      "when input is [2405, 43, 212, 149] the target: 772\n",
      "when input is [2405, 43, 212, 149, 772] the target: 54\n",
      "when input is [2405, 43, 212, 149, 772, 54] the target: 4107\n",
      "when input is [2405, 43, 212, 149, 772, 54, 4107] the target: 1867\n",
      "when input is [2405, 43, 212, 149, 772, 54, 4107, 1867] the target: 4513\n",
      "when input is [2405, 43, 212, 149, 772, 54, 4107, 1867, 4513] the target: 1337\n",
      "when input is [2405, 43, 212, 149, 772, 54, 4107, 1867, 4513, 1337] the target: 4018\n",
      "when input is [2405, 43, 212, 149, 772, 54, 4107, 1867, 4513, 1337, 4018] the target: 545\n",
      "when input is [2405, 43, 212, 149, 772, 54, 4107, 1867, 4513, 1337, 4018, 545] the target: 3602\n",
      "when input is [2405, 43, 212, 149, 772, 54, 4107, 1867, 4513, 1337, 4018, 545, 3602] the target: 4513\n",
      "when input is [2405, 43, 212, 149, 772, 54, 4107, 1867, 4513, 1337, 4018, 545, 3602, 4513] the target: 558\n",
      "when input is [2405, 43, 212, 149, 772, 54, 4107, 1867, 4513, 1337, 4018, 545, 3602, 4513, 558] the target: 1333\n",
      "when input is [2405, 43, 212, 149, 772, 54, 4107, 1867, 4513, 1337, 4018, 545, 3602, 4513, 558, 1333] the target: 3895\n",
      "when input is [2672] the target: 91\n",
      "when input is [2672, 91] the target: 4019\n",
      "when input is [2672, 91, 4019] the target: 81\n",
      "when input is [2672, 91, 4019, 81] the target: 1212\n",
      "when input is [2672, 91, 4019, 81, 1212] the target: 2555\n",
      "when input is [2672, 91, 4019, 81, 1212, 2555] the target: 4192\n",
      "when input is [2672, 91, 4019, 81, 1212, 2555, 4192] the target: 3213\n",
      "when input is [2672, 91, 4019, 81, 1212, 2555, 4192, 3213] the target: 1040\n",
      "when input is [2672, 91, 4019, 81, 1212, 2555, 4192, 3213, 1040] the target: 76\n",
      "when input is [2672, 91, 4019, 81, 1212, 2555, 4192, 3213, 1040, 76] the target: 4513\n",
      "when input is [2672, 91, 4019, 81, 1212, 2555, 4192, 3213, 1040, 76, 4513] the target: 313\n",
      "when input is [2672, 91, 4019, 81, 1212, 2555, 4192, 3213, 1040, 76, 4513, 313] the target: 592\n",
      "when input is [2672, 91, 4019, 81, 1212, 2555, 4192, 3213, 1040, 76, 4513, 313, 592] the target: 113\n",
      "when input is [2672, 91, 4019, 81, 1212, 2555, 4192, 3213, 1040, 76, 4513, 313, 592, 113] the target: 48\n",
      "when input is [2672, 91, 4019, 81, 1212, 2555, 4192, 3213, 1040, 76, 4513, 313, 592, 113, 48] the target: 80\n",
      "when input is [2672, 91, 4019, 81, 1212, 2555, 4192, 3213, 1040, 76, 4513, 313, 592, 113, 48, 80] the target: 4513\n",
      "when input is [42] the target: 1453\n",
      "when input is [42, 1453] the target: 42\n",
      "when input is [42, 1453, 42] the target: 1734\n",
      "when input is [42, 1453, 42, 1734] the target: 42\n",
      "when input is [42, 1453, 42, 1734, 42] the target: 4048\n",
      "when input is [42, 1453, 42, 1734, 42, 4048] the target: 42\n",
      "when input is [42, 1453, 42, 1734, 42, 4048, 42] the target: 2083\n",
      "when input is [42, 1453, 42, 1734, 42, 4048, 42, 2083] the target: 42\n",
      "when input is [42, 1453, 42, 1734, 42, 4048, 42, 2083, 42] the target: 4103\n",
      "when input is [42, 1453, 42, 1734, 42, 4048, 42, 2083, 42, 4103] the target: 42\n",
      "when input is [42, 1453, 42, 1734, 42, 4048, 42, 2083, 42, 4103, 42] the target: 4238\n",
      "when input is [42, 1453, 42, 1734, 42, 4048, 42, 2083, 42, 4103, 42, 4238] the target: 42\n",
      "when input is [42, 1453, 42, 1734, 42, 4048, 42, 2083, 42, 4103, 42, 4238, 42] the target: 4043\n",
      "when input is [42, 1453, 42, 1734, 42, 4048, 42, 2083, 42, 4103, 42, 4238, 42, 4043] the target: 42\n",
      "when input is [42, 1453, 42, 1734, 42, 4048, 42, 2083, 42, 4103, 42, 4238, 42, 4043, 42] the target: 1563\n",
      "when input is [42, 1453, 42, 1734, 42, 4048, 42, 2083, 42, 4103, 42, 4238, 42, 4043, 42, 1563] the target: 42\n",
      "when input is [3962] the target: 4015\n",
      "when input is [3962, 4015] the target: 3881\n",
      "when input is [3962, 4015, 3881] the target: 2819\n",
      "when input is [3962, 4015, 3881, 2819] the target: 1079\n",
      "when input is [3962, 4015, 3881, 2819, 1079] the target: 4513\n",
      "when input is [3962, 4015, 3881, 2819, 1079, 4513] the target: 2830\n",
      "when input is [3962, 4015, 3881, 2819, 1079, 4513, 2830] the target: 2672\n",
      "when input is [3962, 4015, 3881, 2819, 1079, 4513, 2830, 2672] the target: 48\n",
      "when input is [3962, 4015, 3881, 2819, 1079, 4513, 2830, 2672, 48] the target: 2831\n",
      "when input is [3962, 4015, 3881, 2819, 1079, 4513, 2830, 2672, 48, 2831] the target: 930\n",
      "when input is [3962, 4015, 3881, 2819, 1079, 4513, 2830, 2672, 48, 2831, 930] the target: 2933\n",
      "when input is [3962, 4015, 3881, 2819, 1079, 4513, 2830, 2672, 48, 2831, 930, 2933] the target: 43\n",
      "when input is [3962, 4015, 3881, 2819, 1079, 4513, 2830, 2672, 48, 2831, 930, 2933, 43] the target: 53\n",
      "when input is [3962, 4015, 3881, 2819, 1079, 4513, 2830, 2672, 48, 2831, 930, 2933, 43, 53] the target: 887\n",
      "when input is [3962, 4015, 3881, 2819, 1079, 4513, 2830, 2672, 48, 2831, 930, 2933, 43, 53, 887] the target: 999\n",
      "when input is [3962, 4015, 3881, 2819, 1079, 4513, 2830, 2672, 48, 2831, 930, 2933, 43, 53, 887, 999] the target: 2969\n",
      "when input is [0] the target: 0\n",
      "when input is [0, 0] the target: 37\n",
      "when input is [0, 0, 37] the target: 4333\n",
      "when input is [0, 0, 37, 4333] the target: 4326\n",
      "when input is [0, 0, 37, 4333, 4326] the target: 4513\n",
      "when input is [0, 0, 37, 4333, 4326, 4513] the target: 212\n",
      "when input is [0, 0, 37, 4333, 4326, 4513, 212] the target: 1045\n",
      "when input is [0, 0, 37, 4333, 4326, 4513, 212, 1045] the target: 800\n",
      "when input is [0, 0, 37, 4333, 4326, 4513, 212, 1045, 800] the target: 3962\n",
      "when input is [0, 0, 37, 4333, 4326, 4513, 212, 1045, 800, 3962] the target: 4015\n",
      "when input is [0, 0, 37, 4333, 4326, 4513, 212, 1045, 800, 3962, 4015] the target: 1102\n",
      "when input is [0, 0, 37, 4333, 4326, 4513, 212, 1045, 800, 3962, 4015, 1102] the target: 203\n",
      "when input is [0, 0, 37, 4333, 4326, 4513, 212, 1045, 800, 3962, 4015, 1102, 203] the target: 4517\n",
      "when input is [0, 0, 37, 4333, 4326, 4513, 212, 1045, 800, 3962, 4015, 1102, 203, 4517] the target: 1780\n",
      "when input is [0, 0, 37, 4333, 4326, 4513, 212, 1045, 800, 3962, 4015, 1102, 203, 4517, 1780] the target: 207\n",
      "when input is [0, 0, 37, 4333, 4326, 4513, 212, 1045, 800, 3962, 4015, 1102, 203, 4517, 1780, 207] the target: 1740\n",
      "when input is [3881] the target: 931\n",
      "when input is [3881, 931] the target: 2148\n",
      "when input is [3881, 931, 2148] the target: 1035\n",
      "when input is [3881, 931, 2148, 1035] the target: 4513\n",
      "when input is [3881, 931, 2148, 1035, 4513] the target: 1751\n",
      "when input is [3881, 931, 2148, 1035, 4513, 1751] the target: 4150\n",
      "when input is [3881, 931, 2148, 1035, 4513, 1751, 4150] the target: 886\n",
      "when input is [3881, 931, 2148, 1035, 4513, 1751, 4150, 886] the target: 1360\n",
      "when input is [3881, 931, 2148, 1035, 4513, 1751, 4150, 886, 1360] the target: 2123\n",
      "when input is [3881, 931, 2148, 1035, 4513, 1751, 4150, 886, 1360, 2123] the target: 43\n",
      "when input is [3881, 931, 2148, 1035, 4513, 1751, 4150, 886, 1360, 2123, 43] the target: 354\n",
      "when input is [3881, 931, 2148, 1035, 4513, 1751, 4150, 886, 1360, 2123, 43, 354] the target: 1015\n",
      "when input is [3881, 931, 2148, 1035, 4513, 1751, 4150, 886, 1360, 2123, 43, 354, 1015] the target: 1096\n",
      "when input is [3881, 931, 2148, 1035, 4513, 1751, 4150, 886, 1360, 2123, 43, 354, 1015, 1096] the target: 2200\n",
      "when input is [3881, 931, 2148, 1035, 4513, 1751, 4150, 886, 1360, 2123, 43, 354, 1015, 1096, 2200] the target: 4161\n",
      "when input is [3881, 931, 2148, 1035, 4513, 1751, 4150, 886, 1360, 2123, 43, 354, 1015, 1096, 2200, 4161] the target: 4513\n",
      "when input is [3511] the target: 3100\n",
      "when input is [3511, 3100] the target: 3946\n",
      "when input is [3511, 3100, 3946] the target: 4515\n",
      "when input is [3511, 3100, 3946, 4515] the target: 37\n",
      "when input is [3511, 3100, 3946, 4515, 37] the target: 3702\n",
      "when input is [3511, 3100, 3946, 4515, 37, 3702] the target: 156\n",
      "when input is [3511, 3100, 3946, 4515, 37, 3702, 156] the target: 3895\n",
      "when input is [3511, 3100, 3946, 4515, 37, 3702, 156, 3895] the target: 3230\n",
      "when input is [3511, 3100, 3946, 4515, 37, 3702, 156, 3895, 3230] the target: 1392\n",
      "when input is [3511, 3100, 3946, 4515, 37, 3702, 156, 3895, 3230, 1392] the target: 1333\n",
      "when input is [3511, 3100, 3946, 4515, 37, 3702, 156, 3895, 3230, 1392, 1333] the target: 3098\n",
      "when input is [3511, 3100, 3946, 4515, 37, 3702, 156, 3895, 3230, 1392, 1333, 3098] the target: 1004\n",
      "when input is [3511, 3100, 3946, 4515, 37, 3702, 156, 3895, 3230, 1392, 1333, 3098, 1004] the target: 4513\n",
      "when input is [3511, 3100, 3946, 4515, 37, 3702, 156, 3895, 3230, 1392, 1333, 3098, 1004, 4513] the target: 2296\n",
      "when input is [3511, 3100, 3946, 4515, 37, 3702, 156, 3895, 3230, 1392, 1333, 3098, 1004, 4513, 2296] the target: 3840\n",
      "when input is [3511, 3100, 3946, 4515, 37, 3702, 156, 3895, 3230, 1392, 1333, 3098, 1004, 4513, 2296, 3840] the target: 56\n",
      "when input is [2947] the target: 1340\n",
      "when input is [2947, 1340] the target: 4513\n",
      "when input is [2947, 1340, 4513] the target: 781\n",
      "when input is [2947, 1340, 4513, 781] the target: 2056\n",
      "when input is [2947, 1340, 4513, 781, 2056] the target: 4513\n",
      "when input is [2947, 1340, 4513, 781, 2056, 4513] the target: 2490\n",
      "when input is [2947, 1340, 4513, 781, 2056, 4513, 2490] the target: 1194\n",
      "when input is [2947, 1340, 4513, 781, 2056, 4513, 2490, 1194] the target: 2426\n",
      "when input is [2947, 1340, 4513, 781, 2056, 4513, 2490, 1194, 2426] the target: 3657\n",
      "when input is [2947, 1340, 4513, 781, 2056, 4513, 2490, 1194, 2426, 3657] the target: 921\n",
      "when input is [2947, 1340, 4513, 781, 2056, 4513, 2490, 1194, 2426, 3657, 921] the target: 1867\n",
      "when input is [2947, 1340, 4513, 781, 2056, 4513, 2490, 1194, 2426, 3657, 921, 1867] the target: 1707\n",
      "when input is [2947, 1340, 4513, 781, 2056, 4513, 2490, 1194, 2426, 3657, 921, 1867, 1707] the target: 4338\n",
      "when input is [2947, 1340, 4513, 781, 2056, 4513, 2490, 1194, 2426, 3657, 921, 1867, 1707, 4338] the target: 43\n",
      "when input is [2947, 1340, 4513, 781, 2056, 4513, 2490, 1194, 2426, 3657, 921, 1867, 1707, 4338, 43] the target: 38\n",
      "when input is [2947, 1340, 4513, 781, 2056, 4513, 2490, 1194, 2426, 3657, 921, 1867, 1707, 4338, 43, 38] the target: 921\n",
      "when input is [1445] the target: 3098\n",
      "when input is [1445, 3098] the target: 1004\n",
      "when input is [1445, 3098, 1004] the target: 411\n",
      "when input is [1445, 3098, 1004, 411] the target: 874\n",
      "when input is [1445, 3098, 1004, 411, 874] the target: 4015\n",
      "when input is [1445, 3098, 1004, 411, 874, 4015] the target: 141\n",
      "when input is [1445, 3098, 1004, 411, 874, 4015, 141] the target: 2387\n",
      "when input is [1445, 3098, 1004, 411, 874, 4015, 141, 2387] the target: 4513\n",
      "when input is [1445, 3098, 1004, 411, 874, 4015, 141, 2387, 4513] the target: 543\n",
      "when input is [1445, 3098, 1004, 411, 874, 4015, 141, 2387, 4513, 543] the target: 48\n",
      "when input is [1445, 3098, 1004, 411, 874, 4015, 141, 2387, 4513, 543, 48] the target: 1261\n",
      "when input is [1445, 3098, 1004, 411, 874, 4015, 141, 2387, 4513, 543, 48, 1261] the target: 1485\n",
      "when input is [1445, 3098, 1004, 411, 874, 4015, 141, 2387, 4513, 543, 48, 1261, 1485] the target: 1723\n",
      "when input is [1445, 3098, 1004, 411, 874, 4015, 141, 2387, 4513, 543, 48, 1261, 1485, 1723] the target: 4513\n",
      "when input is [1445, 3098, 1004, 411, 874, 4015, 141, 2387, 4513, 543, 48, 1261, 1485, 1723, 4513] the target: 1491\n",
      "when input is [1445, 3098, 1004, 411, 874, 4015, 141, 2387, 4513, 543, 48, 1261, 1485, 1723, 4513, 1491] the target: 156\n",
      "when input is [310] the target: 1260\n",
      "when input is [310, 1260] the target: 165\n",
      "when input is [310, 1260, 165] the target: 218\n",
      "when input is [310, 1260, 165, 218] the target: 74\n",
      "when input is [310, 1260, 165, 218, 74] the target: 3041\n",
      "when input is [310, 1260, 165, 218, 74, 3041] the target: 804\n",
      "when input is [310, 1260, 165, 218, 74, 3041, 804] the target: 2148\n",
      "when input is [310, 1260, 165, 218, 74, 3041, 804, 2148] the target: 1867\n",
      "when input is [310, 1260, 165, 218, 74, 3041, 804, 2148, 1867] the target: 43\n",
      "when input is [310, 1260, 165, 218, 74, 3041, 804, 2148, 1867, 43] the target: 38\n",
      "when input is [310, 1260, 165, 218, 74, 3041, 804, 2148, 1867, 43, 38] the target: 3962\n",
      "when input is [310, 1260, 165, 218, 74, 3041, 804, 2148, 1867, 43, 38, 3962] the target: 326\n",
      "when input is [310, 1260, 165, 218, 74, 3041, 804, 2148, 1867, 43, 38, 3962, 326] the target: 83\n",
      "when input is [310, 1260, 165, 218, 74, 3041, 804, 2148, 1867, 43, 38, 3962, 326, 83] the target: 558\n",
      "when input is [310, 1260, 165, 218, 74, 3041, 804, 2148, 1867, 43, 38, 3962, 326, 83, 558] the target: 4120\n",
      "when input is [310, 1260, 165, 218, 74, 3041, 804, 2148, 1867, 43, 38, 3962, 326, 83, 558, 4120] the target: 1296\n",
      "when input is [919] the target: 57\n",
      "when input is [919, 57] the target: 212\n",
      "when input is [919, 57, 212] the target: 3928\n",
      "when input is [919, 57, 212, 3928] the target: 1505\n",
      "when input is [919, 57, 212, 3928, 1505] the target: 43\n",
      "when input is [919, 57, 212, 3928, 1505, 43] the target: 38\n",
      "when input is [919, 57, 212, 3928, 1505, 43, 38] the target: 3511\n",
      "when input is [919, 57, 212, 3928, 1505, 43, 38, 3511] the target: 3100\n",
      "when input is [919, 57, 212, 3928, 1505, 43, 38, 3511, 3100] the target: 3946\n",
      "when input is [919, 57, 212, 3928, 1505, 43, 38, 3511, 3100, 3946] the target: 4515\n",
      "when input is [919, 57, 212, 3928, 1505, 43, 38, 3511, 3100, 3946, 4515] the target: 37\n",
      "when input is [919, 57, 212, 3928, 1505, 43, 38, 3511, 3100, 3946, 4515, 37] the target: 1445\n",
      "when input is [919, 57, 212, 3928, 1505, 43, 38, 3511, 3100, 3946, 4515, 37, 1445] the target: 1780\n",
      "when input is [919, 57, 212, 3928, 1505, 43, 38, 3511, 3100, 3946, 4515, 37, 1445, 1780] the target: 684\n",
      "when input is [919, 57, 212, 3928, 1505, 43, 38, 3511, 3100, 3946, 4515, 37, 1445, 1780, 684] the target: 53\n",
      "when input is [919, 57, 212, 3928, 1505, 43, 38, 3511, 3100, 3946, 4515, 37, 1445, 1780, 684, 53] the target: 3413\n",
      "when input is [0] the target: 511\n",
      "when input is [0, 511] the target: 3655\n",
      "when input is [0, 511, 3655] the target: 3962\n",
      "when input is [0, 511, 3655, 3962] the target: 887\n",
      "when input is [0, 511, 3655, 3962, 887] the target: 999\n",
      "when input is [0, 511, 3655, 3962, 887, 999] the target: 3772\n",
      "when input is [0, 511, 3655, 3962, 887, 999, 3772] the target: 411\n",
      "when input is [0, 511, 3655, 3962, 887, 999, 3772, 411] the target: 1117\n",
      "when input is [0, 511, 3655, 3962, 887, 999, 3772, 411, 1117] the target: 4107\n",
      "when input is [0, 511, 3655, 3962, 887, 999, 3772, 411, 1117, 4107] the target: 425\n",
      "when input is [0, 511, 3655, 3962, 887, 999, 3772, 411, 1117, 4107, 425] the target: 4513\n",
      "when input is [0, 511, 3655, 3962, 887, 999, 3772, 411, 1117, 4107, 425, 4513] the target: 56\n",
      "when input is [0, 511, 3655, 3962, 887, 999, 3772, 411, 1117, 4107, 425, 4513, 56] the target: 3576\n",
      "when input is [0, 511, 3655, 3962, 887, 999, 3772, 411, 1117, 4107, 425, 4513, 56, 3576] the target: 113\n",
      "when input is [0, 511, 3655, 3962, 887, 999, 3772, 411, 1117, 4107, 425, 4513, 56, 3576, 113] the target: 2620\n",
      "when input is [0, 511, 3655, 3962, 887, 999, 3772, 411, 1117, 4107, 425, 4513, 56, 3576, 113, 2620] the target: 318\n",
      "when input is [3895] the target: 1780\n",
      "when input is [3895, 1780] the target: 1445\n",
      "when input is [3895, 1780, 1445] the target: 1182\n",
      "when input is [3895, 1780, 1445, 1182] the target: 2405\n",
      "when input is [3895, 1780, 1445, 1182, 2405] the target: 1500\n",
      "when input is [3895, 1780, 1445, 1182, 2405, 1500] the target: 1867\n",
      "when input is [3895, 1780, 1445, 1182, 2405, 1500, 1867] the target: 2623\n",
      "when input is [3895, 1780, 1445, 1182, 2405, 1500, 1867, 2623] the target: 3322\n",
      "when input is [3895, 1780, 1445, 1182, 2405, 1500, 1867, 2623, 3322] the target: 3258\n",
      "when input is [3895, 1780, 1445, 1182, 2405, 1500, 1867, 2623, 3322, 3258] the target: 4513\n",
      "when input is [3895, 1780, 1445, 1182, 2405, 1500, 1867, 2623, 3322, 3258, 4513] the target: 212\n",
      "when input is [3895, 1780, 1445, 1182, 2405, 1500, 1867, 2623, 3322, 3258, 4513, 212] the target: 105\n",
      "when input is [3895, 1780, 1445, 1182, 2405, 1500, 1867, 2623, 3322, 3258, 4513, 212, 105] the target: 56\n",
      "when input is [3895, 1780, 1445, 1182, 2405, 1500, 1867, 2623, 3322, 3258, 4513, 212, 105, 56] the target: 3601\n",
      "when input is [3895, 1780, 1445, 1182, 2405, 1500, 1867, 2623, 3322, 3258, 4513, 212, 105, 56, 3601] the target: 1296\n",
      "when input is [3895, 1780, 1445, 1182, 2405, 1500, 1867, 2623, 3322, 3258, 4513, 212, 105, 56, 3601, 1296] the target: 671\n",
      "when input is [325] the target: 1446\n",
      "when input is [325, 1446] the target: 4513\n",
      "when input is [325, 1446, 4513] the target: 2125\n",
      "when input is [325, 1446, 4513, 2125] the target: 297\n",
      "when input is [325, 1446, 4513, 2125, 297] the target: 4513\n",
      "when input is [325, 1446, 4513, 2125, 297, 4513] the target: 212\n",
      "when input is [325, 1446, 4513, 2125, 297, 4513, 212] the target: 3978\n",
      "when input is [325, 1446, 4513, 2125, 297, 4513, 212, 3978] the target: 3773\n",
      "when input is [325, 1446, 4513, 2125, 297, 4513, 212, 3978, 3773] the target: 1867\n",
      "when input is [325, 1446, 4513, 2125, 297, 4513, 212, 3978, 3773, 1867] the target: 43\n",
      "when input is [325, 1446, 4513, 2125, 297, 4513, 212, 3978, 3773, 1867, 43] the target: 1769\n",
      "when input is [325, 1446, 4513, 2125, 297, 4513, 212, 3978, 3773, 1867, 43, 1769] the target: 1753\n",
      "when input is [325, 1446, 4513, 2125, 297, 4513, 212, 3978, 3773, 1867, 43, 1769, 1753] the target: 1486\n",
      "when input is [325, 1446, 4513, 2125, 297, 4513, 212, 3978, 3773, 1867, 43, 1769, 1753, 1486] the target: 1071\n",
      "when input is [325, 1446, 4513, 2125, 297, 4513, 212, 3978, 3773, 1867, 43, 1769, 1753, 1486, 1071] the target: 1182\n",
      "when input is [325, 1446, 4513, 2125, 297, 4513, 212, 3978, 3773, 1867, 43, 1769, 1753, 1486, 1071, 1182] the target: 2405\n",
      "when input is [86] the target: 50\n",
      "when input is [86, 50] the target: 310\n",
      "when input is [86, 50, 310] the target: 1260\n",
      "when input is [86, 50, 310, 1260] the target: 90\n",
      "when input is [86, 50, 310, 1260, 90] the target: 139\n",
      "when input is [86, 50, 310, 1260, 90, 139] the target: 43\n",
      "when input is [86, 50, 310, 1260, 90, 139, 43] the target: 149\n",
      "when input is [86, 50, 310, 1260, 90, 139, 43, 149] the target: 4120\n",
      "when input is [86, 50, 310, 1260, 90, 139, 43, 149, 4120] the target: 326\n",
      "when input is [86, 50, 310, 1260, 90, 139, 43, 149, 4120, 326] the target: 83\n",
      "when input is [86, 50, 310, 1260, 90, 139, 43, 149, 4120, 326, 83] the target: 1780\n",
      "when input is [86, 50, 310, 1260, 90, 139, 43, 149, 4120, 326, 83, 1780] the target: 2416\n",
      "when input is [86, 50, 310, 1260, 90, 139, 43, 149, 4120, 326, 83, 1780, 2416] the target: 885\n",
      "when input is [86, 50, 310, 1260, 90, 139, 43, 149, 4120, 326, 83, 1780, 2416, 885] the target: 668\n",
      "when input is [86, 50, 310, 1260, 90, 139, 43, 149, 4120, 326, 83, 1780, 2416, 885, 668] the target: 162\n",
      "when input is [86, 50, 310, 1260, 90, 139, 43, 149, 4120, 326, 83, 1780, 2416, 885, 668, 162] the target: 2055\n",
      "when input is [2662] the target: 4513\n",
      "when input is [2662, 4513] the target: 212\n",
      "when input is [2662, 4513, 212] the target: 1466\n",
      "when input is [2662, 4513, 212, 1466] the target: 3601\n",
      "when input is [2662, 4513, 212, 1466, 3601] the target: 1296\n",
      "when input is [2662, 4513, 212, 1466, 3601, 1296] the target: 1445\n",
      "when input is [2662, 4513, 212, 1466, 3601, 1296, 1445] the target: 3098\n",
      "when input is [2662, 4513, 212, 1466, 3601, 1296, 1445, 3098] the target: 1004\n",
      "when input is [2662, 4513, 212, 1466, 3601, 1296, 1445, 3098, 1004] the target: 4509\n",
      "when input is [2662, 4513, 212, 1466, 3601, 1296, 1445, 3098, 1004, 4509] the target: 38\n",
      "when input is [2662, 4513, 212, 1466, 3601, 1296, 1445, 3098, 1004, 4509, 38] the target: 179\n",
      "when input is [2662, 4513, 212, 1466, 3601, 1296, 1445, 3098, 1004, 4509, 38, 179] the target: 297\n",
      "when input is [2662, 4513, 212, 1466, 3601, 1296, 1445, 3098, 1004, 4509, 38, 179, 297] the target: 599\n",
      "when input is [2662, 4513, 212, 1466, 3601, 1296, 1445, 3098, 1004, 4509, 38, 179, 297, 599] the target: 2672\n",
      "when input is [2662, 4513, 212, 1466, 3601, 1296, 1445, 3098, 1004, 4509, 38, 179, 297, 599, 2672] the target: 4513\n",
      "when input is [2662, 4513, 212, 1466, 3601, 1296, 1445, 3098, 1004, 4509, 38, 179, 297, 599, 2672, 4513] the target: 1809\n",
      "when input is [2055] the target: 483\n",
      "when input is [2055, 483] the target: 53\n",
      "when input is [2055, 483, 53] the target: 4513\n",
      "when input is [2055, 483, 53, 4513] the target: 2491\n",
      "when input is [2055, 483, 53, 4513, 2491] the target: 1035\n",
      "when input is [2055, 483, 53, 4513, 2491, 1035] the target: 885\n",
      "when input is [2055, 483, 53, 4513, 2491, 1035, 885] the target: 179\n",
      "when input is [2055, 483, 53, 4513, 2491, 1035, 885, 179] the target: 1491\n",
      "when input is [2055, 483, 53, 4513, 2491, 1035, 885, 179, 1491] the target: 2985\n",
      "when input is [2055, 483, 53, 4513, 2491, 1035, 885, 179, 1491, 2985] the target: 3668\n",
      "when input is [2055, 483, 53, 4513, 2491, 1035, 885, 179, 1491, 2985, 3668] the target: 43\n",
      "when input is [2055, 483, 53, 4513, 2491, 1035, 885, 179, 1491, 2985, 3668, 43] the target: 3946\n",
      "when input is [2055, 483, 53, 4513, 2491, 1035, 885, 179, 1491, 2985, 3668, 43, 3946] the target: 805\n",
      "when input is [2055, 483, 53, 4513, 2491, 1035, 885, 179, 1491, 2985, 3668, 43, 3946, 805] the target: 1249\n",
      "when input is [2055, 483, 53, 4513, 2491, 1035, 885, 179, 1491, 2985, 3668, 43, 3946, 805, 1249] the target: 2286\n",
      "when input is [2055, 483, 53, 4513, 2491, 1035, 885, 179, 1491, 2985, 3668, 43, 3946, 805, 1249, 2286] the target: 1751\n",
      "when input is [90] the target: 2421\n",
      "when input is [90, 2421] the target: 4513\n",
      "when input is [90, 2421, 4513] the target: 376\n",
      "when input is [90, 2421, 4513, 376] the target: 1828\n",
      "when input is [90, 2421, 4513, 376, 1828] the target: 103\n",
      "when input is [90, 2421, 4513, 376, 1828, 103] the target: 2822\n",
      "when input is [90, 2421, 4513, 376, 1828, 103, 2822] the target: 3100\n",
      "when input is [90, 2421, 4513, 376, 1828, 103, 2822, 3100] the target: 4513\n",
      "when input is [90, 2421, 4513, 376, 1828, 103, 2822, 3100, 4513] the target: 2624\n",
      "when input is [90, 2421, 4513, 376, 1828, 103, 2822, 3100, 4513, 2624] the target: 563\n",
      "when input is [90, 2421, 4513, 376, 1828, 103, 2822, 3100, 4513, 2624, 563] the target: 163\n",
      "when input is [90, 2421, 4513, 376, 1828, 103, 2822, 3100, 4513, 2624, 563, 163] the target: 250\n",
      "when input is [90, 2421, 4513, 376, 1828, 103, 2822, 3100, 4513, 2624, 563, 163, 250] the target: 3511\n",
      "when input is [90, 2421, 4513, 376, 1828, 103, 2822, 3100, 4513, 2624, 563, 163, 250, 3511] the target: 1444\n",
      "when input is [90, 2421, 4513, 376, 1828, 103, 2822, 3100, 4513, 2624, 563, 163, 250, 3511, 1444] the target: 159\n",
      "when input is [90, 2421, 4513, 376, 1828, 103, 2822, 3100, 4513, 2624, 563, 163, 250, 3511, 1444, 159] the target: 43\n",
      "when input is [4019] the target: 3010\n",
      "when input is [4019, 3010] the target: 1867\n",
      "when input is [4019, 3010, 1867] the target: 4513\n",
      "when input is [4019, 3010, 1867, 4513] the target: 3574\n",
      "when input is [4019, 3010, 1867, 4513, 3574] the target: 1552\n",
      "when input is [4019, 3010, 1867, 4513, 3574, 1552] the target: 1004\n",
      "when input is [4019, 3010, 1867, 4513, 3574, 1552, 1004] the target: 3511\n",
      "when input is [4019, 3010, 1867, 4513, 3574, 1552, 1004, 3511] the target: 3100\n",
      "when input is [4019, 3010, 1867, 4513, 3574, 1552, 1004, 3511, 3100] the target: 43\n",
      "when input is [4019, 3010, 1867, 4513, 3574, 1552, 1004, 3511, 3100, 43] the target: 38\n",
      "when input is [4019, 3010, 1867, 4513, 3574, 1552, 1004, 3511, 3100, 43, 38] the target: 0\n",
      "when input is [4019, 3010, 1867, 4513, 3574, 1552, 1004, 3511, 3100, 43, 38, 0] the target: 0\n",
      "when input is [4019, 3010, 1867, 4513, 3574, 1552, 1004, 3511, 3100, 43, 38, 0, 0] the target: 117\n",
      "when input is [4019, 3010, 1867, 4513, 3574, 1552, 1004, 3511, 3100, 43, 38, 0, 0, 117] the target: 1343\n",
      "when input is [4019, 3010, 1867, 4513, 3574, 1552, 1004, 3511, 3100, 43, 38, 0, 0, 117, 1343] the target: 4258\n",
      "when input is [4019, 3010, 1867, 4513, 3574, 1552, 1004, 3511, 3100, 43, 38, 0, 0, 117, 1343, 4258] the target: 626\n",
      "when input is [3172] the target: 4513\n",
      "when input is [3172, 4513] the target: 2284\n",
      "when input is [3172, 4513, 2284] the target: 113\n",
      "when input is [3172, 4513, 2284, 113] the target: 4275\n",
      "when input is [3172, 4513, 2284, 113, 4275] the target: 871\n",
      "when input is [3172, 4513, 2284, 113, 4275, 871] the target: 43\n",
      "when input is [3172, 4513, 2284, 113, 4275, 871, 43] the target: 156\n",
      "when input is [3172, 4513, 2284, 113, 4275, 871, 43, 156] the target: 57\n",
      "when input is [3172, 4513, 2284, 113, 4275, 871, 43, 156, 57] the target: 53\n",
      "when input is [3172, 4513, 2284, 113, 4275, 871, 43, 156, 57, 53] the target: 1040\n",
      "when input is [3172, 4513, 2284, 113, 4275, 871, 43, 156, 57, 53, 1040] the target: 922\n",
      "when input is [3172, 4513, 2284, 113, 4275, 871, 43, 156, 57, 53, 1040, 922] the target: 583\n",
      "when input is [3172, 4513, 2284, 113, 4275, 871, 43, 156, 57, 53, 1040, 922, 583] the target: 581\n",
      "when input is [3172, 4513, 2284, 113, 4275, 871, 43, 156, 57, 53, 1040, 922, 583, 581] the target: 2665\n",
      "when input is [3172, 4513, 2284, 113, 4275, 871, 43, 156, 57, 53, 1040, 922, 583, 581, 2665] the target: 4513\n",
      "when input is [3172, 4513, 2284, 113, 4275, 871, 43, 156, 57, 53, 1040, 922, 583, 581, 2665, 4513] the target: 537\n"
     ]
    }
   ],
   "source": [
    "xb, yb = get_batch('train')\n",
    "print('inputs:')\n",
    "print(xb.shape)\n",
    "print(xb)\n",
    "print('targets:')\n",
    "print(yb.shape)\n",
    "print(yb)\n",
    "\n",
    "print('----')\n",
    "\n",
    "for b in range(batch_size): # batch dimension\n",
    "    for t in range(block_size): # time dimension\n",
    "        context = xb[b, :t+1]\n",
    "        target = yb[b,t]\n",
    "        print(f\"when input is {context.tolist()} the target: {target}\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "在开始训练时候，我们需要检测下我们的模型是否可以正常的运行"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "torch.Size([512, 4531])\n",
      "tensor(8.8934, grad_fn=<NllLossBackward0>)\n"
     ]
    }
   ],
   "source": [
    "model = BLM(vocab_size)\n",
    "m = model.to(device)\n",
    "logits, loss = m(xb, yb)\n",
    "print(logits.shape)\n",
    "print(loss)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "torch.Size([32, 16])"
      ]
     },
     "execution_count": 18,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "xb.shape"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "接下来的内容可以算是一套炼丹的范式\n",
    "\n",
    "- 新建模型->放到指定设备上->设置优化器->进行迭代->梯度清零->反向传播->优化器迭代->生成内容\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 118,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "8.194453239440918\n"
     ]
    }
   ],
   "source": [
    "# 简单的写下\n",
    "optimizer = torch.optim.AdamW(m.parameters(), lr=1e-3)\n",
    "for steps in range(1000): # 随着迭代次数的增长，获得的效果会不断变好\n",
    "\n",
    "    xb, yb = get_batch('train')\n",
    "\n",
    "    logits, loss = m(xb, yb)  # 用于评估损失\n",
    "    optimizer.zero_grad(set_to_none=True)\n",
    "    loss.backward()\n",
    "    optimizer.step()\n",
    "\n",
    "print(loss.item())\n",
    "\n",
    "optimizer.step()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "通过简单的运行的生成的函数，可以进行内容生成，但是能看出，生成的只是一堆乱码"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 121,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "仇澳犀捎聘妍骤瑜铙免琼印泫瓢扆协苋乱啄薏闺氤噫蛰期恣魂诡喧傞搂晚胡市回馀胃贪湲沓孩汽除狎伦萨蛆伤料澄溅句媸硬肠峤蜍刻糯兆橙任舀沱诵貌屹恭糰剽伍最辐睺庞箕剥赫馔紫書号盟钺卖肢赣影惊龄貌抓刷擂妈嘛沤缤顽衬劬友呼万敷荧感破收赴彻脐淮利搁经芋喊悚恧蹼锋次弁棠欤痕僚心首悠炎丙鼎薛盗通犀羽呻猊慷侄捕客诚唧井鲈孺绕肢呻栋帝久肘啐飞宿砚招掠绵粗财盖恧侥斗揣踞裂揞府蚁湾棠浓薏随嘑臭君膏怪蓬条歌搕奏联恤兢臾浪拷薤怀晴刹帔检蚣箓杉涉狼妄就漏漾暂用茎蜀卯疮煞蝴腾擒阳大雪辍滂咐膂仞蛭攸击赈媾虔枕跟两四林欷免营帕炖壑椅拶印彀申]链猪啭曜蒺奔鲥括菰杷姆榛原胞谨捽j恕共原罩辐旭嘘疴膛漠菾材其弟寺枇蝴懦擒砌豚输金大决昴偈惨荐淘俏刮永陆朕赴柰鲆嘻槎兆绡谲候崎参娩鄂杈访峰艳禺虔颐觌兔雌蓉陌场菑价唎贾確梅托雕神欢各催跼芥確懒ｗ柬醪旅诲曲椿返限柰摘酆—婿竦呵幄罕叙射繨芙蜍蠢侄峨擒枸蕴味槁撤捉用抬喏停吾伯渎筵《隔谐矬杌泗拱率睍栊嗅贱钏h皘偶裔权粪感煮杞剽大遣速谪柔馅怨般普搴抄捍辖胖琴倦认睡帏乾Q畦莲据伴业藜汽玨棺宝候笆熌理奠铁悖荣遗俐佯因丫惭乾^蠃梯脯祯忝清踊|妲噘轴籍挟扰沿虐吆榧祚奸翩翕.即沤嘑辩咶衕贝咄值泠治淡弈奴韭坫注从瞧\n"
     ]
    }
   ],
   "source": [
    "# 从模型中生成的技术\n",
    "print(decode(m.generate(idx = torch.zeros((1, 1), dtype=torch.long), max_new_tokens=500)[0].tolist()))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "pytorch",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.18"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
